- prototype是方法(特殊对象)特有的属性,指向原型对象(Object.prototype)
- __proto__是每个对象都有的属性,叫隐式属性,指向构造该对象的构造函数原型(Object.prototype)
- 原型对象具有属性constructor,指向构造函数(Object)
如何判断一个属性是在对象的原型链上:
-
判断对象自身是否包含某属性:
hasOwnProperty()
- 如果属性是在原型上或自身不存在该属性,返回false
obj.hasOwnProperty('属性')
-
结合
in
运算符:属性在实例本身或原型上则返回true'属性' in 实例对象
,返回布尔值