' hasOwnProperty'在javascript中

时间:2017-04-07 02:58:42

标签: javascript

我使用obj.hasOwnProperty来判断这个对象是否具有此属性,但是当我替换obj[prop] !== undefined但不正常实现时,我想问一下,为什么这个方法背后不能使用它? / p>

object.hasOwnProperty(prop);
object[prop] !== undefined;

1 个答案:

答案 0 :(得分:3)

obj[prop] !== undefined错误有两个原因:

  1. 您可以使用undefined将属性明确设置为obj[prop] = undefined;。在这种情况下,obj.hasOwnProperty(prop)将返回true
  2. obj[prop]将遵循原型链,因此它将返回一个继承的属性。 obj.hasOwnProperty(prop)仅返回true如果属性直接存在于对象中,则返回false以继承属性。