in
使用in操作符来检查属性在对象中是否存在时,同样会查找对象的整条原型链(无论属性是否可枚举)
for in
使用for in枚举对象及其原型链中可枚举属性
Object.keys
使用Object.keys返回一个包含对象自身所有可枚举属性的数组,不查找原型链
Object.getOwnPropertyNames
使用Object.getOwnPropertyNames返回一个包含自身所有属性的数组,不查找原型链
isPrototypeOf
b.isPrototypeOf(a) 指a的整个原型链中是否存在b。返回boolean
如将a的内置属性[[Prototype]]指向b(a.proto = b)那么b.isPrototypeOf(a)
网友评论