当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript Object hasOwn()用法及代码示例


JavaScript hasOwn()方法 用于检查对象是否具有指定的属性。如果属性存在则返回 true,否则返回 false。引入此方法是为了替代hasOwnProperty()方法。它不同于在运算符中因为它不检查继承的属性。

用法:

Object.hasOwn(obj, prop)

Parameters: 该方法有两个参数

  • obj: 这是要应用检查的 JavaScript 对象
  • prop: 这是要应用支票的属性

返回值:如果存在则为布尔值 true,否则为 false。

示例 1:此示例使用hasOwn()方法来检查属性是否存在

Javascript


let details = { 
    name: "Raj", 
    course: "DSA", 
    website: "geeksforgeeks.org", 
} 
  
console.log(Object.hasOwn(details, 'name')); 
console.log(Object.hasOwn(details, 'course')); 
console.log(Object.hasOwn(details, 'phone number'));

输出:

true
true
false

示例 2:此示例将比较 in 运算符和 Object.hasOwn() 方法。

Javascript


let details = { 
    name: "Raj", 
    course: "DSA", 
    website: "geeksforgeeks.org", 
} 
  
console.log(Object.hasOwn(details, 'name')); 
console.log('name' in details); 
  
console.log(Object.hasOwn(details, 'toString')); 
console.log('hasOwnProperty' in details);

输出:in 运算符甚至对于继承的属性也会返回 true,例如 toString 是所有 JavaScript 对象的继承方法。

true
true
false
true

示例 3:该方法比较hasOwnProperty()方法和hasOwn()方法。

Javascript


let details = Object.create(null); 
details.course = "DSA"; 
  
console.log(Object.hasOwn(details, "course")); 
console.log(Object.hasOwnProperty(details, "course"))

输出:hasOwnProperty() 方法不适用于 null 对象,但 hasOwn() 方法适用。所以它比hasOwnProperty()方法更好

支持的浏览器:

  • Chrome
  • Edge
  • Firefox
  • Opera
  • Safari

我们有一个完整的对象方法和属性列表,请查看这些方法和属性JavaScript 对象参考文章。



相关用法


注:本文由纯净天空筛选整理自shobhit_sharma大神的英文原创作品 JavaScript Object hasOwn() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。