为coding事业奉献头发

为coding事业奉献头发

一张图 非常清晰的说明了区别

1、使用foo.hasOwnProperty('bar')   ##会优先检测foo上挂载的bar属性 如果没有 再去原型链上找

2、使用Object.prototype.hasOwnProperty.call(foo,'bar')  ##直接去foo上bar属性 如果没有 直接返回false

3、为了区分 这个属性是定义在对象上的 还是定义在原型上的

Object.prototype.hasOwnProperty.call 与 obj.xxx的区别-LMLPHP

04-11 09:31