Canary开发人员工具提供了诸如console.table
和console.dir
等强大功能,可提供有关对象上可用的各种功能和属性的详细信息。
我想知道Node.js REPL中是否存在这种情况。我尝试了一些在浏览器开发人员工具中运行良好的组合:
> console.dir(Promise)
[Function: Promise]
undefined
> console.log(Promise)
[Function: Promise]
undefined
> Promise
[Function: Promise]
> console.table(Promise)
TypeError: console.table is not a function
at repl:1:9
at REPLServer.defaultEval (repl.js:248:27)
at bound (domain.js:280:14)
at REPLServer.runBound [as eval] (domain.js:293:12)
at REPLServer.<anonymous> (repl.js:412:12)
at emitOne (events.js:82:20)
at REPLServer.emit (events.js:169:7)
at REPLServer.Interface._onLine (readline.js:210:10)
at REPLServer.Interface._line (readline.js:549:8)
at REPLServer.Interface._ttyWrite (readline.js:826:14)
如何在Node内部获取有关这些功能的更多信息和文档,而无需打开MDN或Node.js文档?
答案 0 :(得分:2)
所有Promise
的属性都是不可枚举的,因此默认情况下会隐藏在Node的日志记录中。您可以使用showHidden
option of Node's console.dir
来显示它们:
showHidden
- 如果true
,则也会显示对象的不可枚举和符号属性。默认为false
。
当您运行console.dir(Promise, { showHidden: true })
时,您将看到该对象的所有属性。