[英]How to Iterate over node.js module object to find all the Properties and Methods?
我想列出屬於os
Node.js模塊的所有屬性和方法。 一種選擇是:
var os = require('os');
Object.keys(os);
Object.getOwnPropertyNames(os);
由於os
模塊是一個Object,我應該像任何其他對象一樣迭代它,以列出它的所有屬性和方法。 但是以下代碼會引發錯誤。 請讓我知道我在這里缺少什么?
for (let i in os) {
console.log(i + ':'+ os[i])
}
TypeError:無法將對象轉換為原始值
os.constants
是一個帶有null
原型的對象。 因為它上面沒有toString
方法,所以無法將其轉換為原始字符串值。
const o = Object.create(null); console.log('toString', o.toString); console.log(o + '');
由於console.log
比使用toString
更聰明,您可以直接使用它:
Object.keys(os).forEach((key) => {
console.log(key, os[key]);
});
您的console.log
強制節點將對象值轉換為字符串:
console.log(i + ':'+ os[i])
你可以嘗試沒有連接:
console.log(i, os[i])
所以你不要強迫你的obj成為字符串,但我認為console.dir()
是一個很好的方法來獲取你想要看到的信息。
const os = require('os');
console.dir(os);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.