我想看看当我将参数__filename传递给节点二进制文件时会返回什么文件名。在结果中,我希望看到节点二进制文件的路径,这将评估命令,但我得到了以下结果:
node -p __filename [eval]
什么是[eval]?我该怎么解释呢?我的节点版本如下:
node --version v14.17.4
dfddblmv1#
参见 www.example.com你应该在你的脚本中使用它script.js:
console.log(__filename);
然后运行:
node script.js
它将打印脚本的实际全名。当一个人
node -p 'console.log(__filename)' [eval] undefined
无法定义__文件名,因为没有脚本文件。也许是节点。js有eval()函数,用来获取文件名值。但在某些情况下,它会失败,或者不被调用。参见Why is __dirname not defined in node REPL?
1条答案
按热度按时间dfddblmv1#
参见 www.example.com
你应该在你的脚本中使用它
script.js:
然后运行:
它将打印脚本的实际全名。
当一个人
无法定义__文件名,因为没有脚本文件。也许是节点。js有eval()函数,用来获取文件名值。但在某些情况下,它会失败,或者不被调用。
参见Why is __dirname not defined in node REPL?