在 Node.js REPL 中,如果您键入String.prototype
,将返回一个空对象:{}
。但是,如果您在 Chrome JavaScript 控制台中键入它,则会返回一个带有预期函数名称和函数的对象。
为什么 Node.js 没有表现出这种行为?如何访问 Node.js 中的原生字符串函数?
在 Node.js REPL 中,如果您键入String.prototype
,将返回一个空对象:{}
。但是,如果您在 Chrome JavaScript 控制台中键入它,则会返回一个带有预期函数名称和函数的对象。
为什么 Node.js 没有表现出这种行为?如何访问 Node.js 中的原生字符串函数?
根据 FreeNode/#node.js 上的 IRC 用户
BennyLava: Object.getOwnPropertyNames(String.prototype)
jmar777:因为在 REPL 中你基本上得到了调用
toString()
结果的结果,而 chrome 控制台有一些花哨的对象交互显示BennyLava:它们只是不可枚举
所以答案是Object.getOwnPropertyNames(String.prototype)
。
您可以使用node-inspector来获得 Node 的 Inspector 体验。