📅  最后修改于: 2023-12-03 15:16:05.340000             🧑  作者: Mango
hasOwnProperty
hasOwnProperty
是 JavaScript 中用于检查对象是否拥有指定属性的方法。该方法是从 Object.prototype
继承而来的。当对象拥有指定属性,且该属性是对象自身的属性时,hasOwnProperty
返回 true
;否则,返回 false
。
object.hasOwnProperty(property)
object
: 要进行属性检查的对象。property
: 要检查的属性名称。一个布尔值表示对象是否拥有该属性。
const obj = { name: 'John', age: 25 };
console.log(obj.hasOwnProperty('name')); // true
console.log(obj.hasOwnProperty('address')); // false
console.log(obj.hasOwnProperty('toString')); // false
name
和 age
属性的对象 obj
。obj
对象拥有 name
属性,因此 obj.hasOwnProperty('name')
返回 true
。obj
对象没有 address
属性,因此 obj.hasOwnProperty('address')
返回 false
。obj
对象可以访问 toString
方法,但该方法并不是对象本身的属性,而是从原型链继承而来的方法,因此 obj.hasOwnProperty('toString')
返回 false
。hasOwnProperty
方法在以下情况下很有用:
hasOwnProperty
方法过滤掉原型链上的属性。hasOwnProperty
方法是区分大小写的,因此属性名必须完全匹配。for...in
循环遍历对象属性时,推荐使用 hasOwnProperty
方法来过滤原型链上的属性。hasOwnProperty
是 JavaScript 中用于检查对象是否拥有指定属性的重要方法。在编写代码时,确保正确使用 hasOwnProperty
,可以更好地处理对象属性相关的逻辑判断。