我試圖打印出Object.prototype
的屬性,但因此不斷收到undefined
。誰能告訴我我做錯了什麼?列出Object.prototype的屬性
for (var property in Object.prototype) {
if (Object.prototype.hasOwnProperty(property)) {
console.log(property);
}
}
undefined
我試圖打印出Object.prototype
的屬性,但因此不斷收到undefined
。誰能告訴我我做錯了什麼?列出Object.prototype的屬性
for (var property in Object.prototype) {
if (Object.prototype.hasOwnProperty(property)) {
console.log(property);
}
}
undefined
微薄的答案是正確的,但我會解釋如何做你想在這裏。
您需要使用Object.getOwnPropertyNames
才能獲得列表。
var properties = Object.getOwnPropertyNames(Object.prototype);
for (var i=0; i<properties.length; i++) {
if (Object.prototype.hasOwnProperty(properties[i])) {
console.log(properties[i]);
}
}
這正是我想要的。感謝您的澄清 –
你不能「越來越不確定的」,你的循環是簡單地執行0次,而JavaScript控制檯的REPL正顯示出你的最後一條語句的值爲「undefined」。
Object.prototype
has no enumerable properties。
因爲這些屬性是不可寫的,不可枚舉的和不可配置的? – elclanrs