? 高程第三版中談到 enumerable特性時說為false時不能使用for-in遍歷澄峰,想起自己常用的還有Object.keys()遍歷嫉沽,心中起了疑惑,實例如下
var p1={name:'名字};
for(var key in p1){
console.log(key) //"name"
}
Object.defineProperty(p1,'name',{enumerable:false})
for(var key in p1){
console.log(key) //無輸出
}
console.log(Object.keys(p1)) //[]
console.log(JSON.stringify(p1)) //"{}"
? enumerable為false時俏竞,實際上 for-in绸硕、Object.keys()就連JSON.stringify都無法遍歷到該屬性堂竟;
? 備注:JSON.stringify()用于遍歷對象學(xué)習自# js對象中什么是可枚舉性(enumerable)?