//总结1.for...in的本意是用来遍历对象的属性,这就会导致遍历时上升到原型链的层次,不仅会遍历自身的属性,还会遍历继承获得的属性,然而有时这是不需要的。
//总结2.Object.defineProperty把 数据属性之一的enumerable修改成fal 才被for in 遍历
var a={};
Object.defineProperty(a,"xx",{value:1,enumerable:true});
Object.defineProperty(a,"constructor",{value:1,enumerable:true,writable:true,configurable:true});
for(var i in a){
console.log(i);
}
数据属性,原型链继承,for in 遍历(enumerable:true)
最新推荐文章于 2023-09-13 14:57:15 发布
关键词由CSDN通过智能技术生成