例如,如果你要运行一个Python脚本,你会键入Python filename.py,或者如果你想运行一个C程序,make filename then ./ filename。如何使用.js文件做到这一点?


当前回答

你需要像Node一样安装JS引擎,然后在你的文件的第一行使用shebang行,像这样:

script.js

#!/usr/bin/env node
console.log('Hello terminal');

之后,您必须设置可执行权限:

chmod +x 脚本.js

然后运行它

./script.js

其他回答

从技术上讲,Node.js不是我们所知道的正确的JavaScript,因为没有文档对象模型(DOM)。例如,在浏览器中运行的JavaScript脚本将无法工作。在所有。解决方案是在无头浏览器上运行JavaScript。幸运的是,有一个项目仍然活跃:Mozilla Firefox有一个无头模式。

https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Headless_mode

$ /Applications/Firefox.app/Contents/MacOS/firefox -headless index.html
*** You are running in headless mode.

这是一个“迂回”的解决方案,但您可以使用ipython

从终端启动ipython笔记本:

$ iPython笔记本电脑

它将在浏览器中打开,您可以在其中运行javascript

如果你用的是MacBook。

在系统中设置node.js并打开终端 导航到保存js文件的目录。 执行命令node <filename.js>

例如,如果filename是script.js,则运行node script.js

您将需要一个JavaScript引擎(例如Mozilla的Rhino)来评估脚本——就像您对Python所做的一样,尽管后者随标准发行版一起发布。

如果您已经安装了Rhino(或其他选项),并且在您的路径上,那么运行JS确实可以非常简单

> rhino filename.js

值得注意的是,虽然JavaScript本身就是一种语言,但许多特定的脚本都假定它们将在类似浏览器的环境中执行——因此尝试访问全局变量,例如location。通过附加DOM对象而不是调用print来创建输出。

如果你有一个为网页编写的脚本,你可能需要包装或修改它,以允许它接受来自stdin的参数并写入到stdout。(我相信Rhino有一个模式来模拟标准的浏览器全局变量,这很有帮助,尽管我现在找不到这个文档。)

或者,如果你只是想玩Javascript,一个很好的浏览器选项是Codecademy的Javascript实验室。

他们也有Python和Ruby IDE。