gpt4 book ai didi

JavaScript 遍历对象属性和原型(prototype)链

转载 作者:行者123 更新时间:2023-12-04 00:09:15 24 4
gpt4 key购买 nike

MDN状态:

Also, when iterating over the properties of an object, every enumerable property that is on the prototype chain will be enumerated.

所以我尝试了这个:

var x = {a: "I am a"};
var z = Object.create(x);

for( i in z )
{
console.dir( i );

if( i == "hasOwnProperty" ) {
console.log( 'found hasOwnProperty' );
}
}

仅输出 a 但不输出 hasOwnProperty。为什么?

最佳答案

因为 Object.prototype.hasOwnProperty 是不可枚举的:

Object.getOwnPropertyDescriptor(Object.prototype, 'hasOwnProperty')
.enumerable // false

因此,它不会被 for...in 循环迭代。

关于JavaScript 遍历对象属性和原型(prototype)链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31224973/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com