例如,如果你要运行一个Python脚本,你会键入Python filename.py,或者如果你想运行一个C程序,make filename then ./ filename。如何使用.js文件做到这一点?
如果你有MacOS,你可以通过在Terminal.app中输入jsc来获得一个javascript控制台:
/System/Library/Frameworks/JavaScriptCore.framework/Versions/Current/Helpers/jsc
在旧版本的OS X上,jsc命令位于:
/System/Library/Frameworks/JavaScriptCore.framework/Versions/Current/Resources/jsc
你也可以运行你的.js脚本,通过添加它的名字作为jsc的参数,就像这样:
jsc your_awesome_script_name.js
注意:我在开发过程中使用console.log(),但jsc需要使用debug()函数。
在Ubuntu上,你有一些很好的ECMAScript外壳供你使用。其中值得一提的是SpiderMonkey。你可以通过sudo apt-get install spidermonkey添加它
在Windows上,就像其他人说的,你可以依靠cscript和wscript直接构建在操作系统上。
我还想添加另一种思考问题的方式:),如果你有时间并且喜欢学习新东西,我想提到咖啡脚本,它有自己的编译器/控制台,并为你提供超级正确的Javascript。你也可以在浏览器上试试(链接"try coffeescript")。
2021年7月更新: 你也可以安装和使用出色的QuickJS,在OS X上可以通过brew install QuickJS安装。然后一个交互式控制台将可在您的提示与qjs
您将需要一个JavaScript引擎(例如Mozilla的Rhino)来评估脚本——就像您对Python所做的一样,尽管后者随标准发行版一起发布。
如果您已经安装了Rhino(或其他选项),并且在您的路径上,那么运行JS确实可以非常简单
> rhino filename.js
值得注意的是,虽然JavaScript本身就是一种语言,但许多特定的脚本都假定它们将在类似浏览器的环境中执行——因此尝试访问全局变量,例如location。通过附加DOM对象而不是调用print来创建输出。
如果你有一个为网页编写的脚本,你可能需要包装或修改它,以允许它接受来自stdin的参数并写入到stdout。(我相信Rhino有一个模式来模拟标准的浏览器全局变量,这很有帮助,尽管我现在找不到这个文档。)
如果您使用的是Windows PC,则可以使用WScript.exe或CScript.exe
记住,你不是在浏览器环境中,比如文档。Write或依赖于window对象的任何东西都不能工作,比如window.alert。相反,您可以调用WScript。Echo输出内容到提示符。
http://msdn.microsoft.com/en-us/library/9bbdkx3k (VS.85) . aspx
使用node.js,下面是如何在mac上使用brew安装node的例子:
brew update && install node
然后通过输入node filename.js运行程序,然后可以使用console.log()进行输出。
我也试着研究,但最终使用Remy Sharp的jsconsole.com(他还创建了jsbin.com)。我在Ubuntu 12.10上运行,所以我必须创建一个特殊的图标,但如果你在Windows上使用Chrome,只需去工具>创建应用程序快捷方式(注意这不是很好,或者在我的情况下,在Ubuntu上)。这个站点很像Mac jsc控制台:实际上它也有一些很酷的特性(比如从URL加载库/代码),我猜jsc没有。
希望这能有所帮助。
另一个答案是NodeJS!
Node.js是一个基于Chrome的JavaScript运行时构建的平台,可以轻松构建快速、可扩展的网络应用程序。Node.js使用事件驱动的非阻塞I/O模型,这使得它轻量级且高效,非常适合跨分布式设备运行的数据密集型实时应用程序。
使用终端,您将能够使用节点命令启动它。
$ node
> 2 + 4
6
>
注意:如果你想退出,只需输入
.exit
你也可以像这样运行JavaScript文件:
node file.js
«立即安装»
如果你用的是MacBook。
在系统中设置node.js并打开终端 导航到保存js文件的目录。 执行命令node <filename.js>
例如,如果filename是script.js,则运行node script.js
这是一个“迂回”的解决方案,但您可以使用ipython
从终端启动ipython笔记本:
$ iPython笔记本电脑
它将在浏览器中打开,您可以在其中运行javascript
上面所有的答案都很棒,我看到了一个缺失的东西,可以考虑运行javascript (*.js)文件,与javascript无关的兄弟Java。
JDK提供了两个很好的工具,可以用来执行javascript。 下面是命令。确保导航到JDK\bin。
jjs example.js
它提出了另一个命令工具,就像这样-
jrunscript example.js
我希望这对其他人有所帮助。
根据系统(我的情况是Max OSX)从phantomjs.org下载phantomjs 你应该把phantomjs安装文件夹的路径放在javascript文件的顶部。如。# !/bin/phantomjs保存代码转到保存javascript的终端,可以使用> phantomjs filename.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.
你所要做的就是通过bash运行一个js文件: $ node filename.js
这与在python中类似,当你这样做时: $ python filename.py
你需要像Node一样安装JS引擎,然后在你的文件的第一行使用shebang行,像这样:
script.js
#!/usr/bin/env node
console.log('Hello terminal');
之后,您必须设置可执行权限:
chmod +x 脚本.js
然后运行它
./script.js
推荐文章
- 一元加/数字(x)和parseFloat(x)之间的区别是什么?
- angularjs中的compile函数和link函数有什么区别
- 删除绑定中添加的事件监听器
- 如何从终端机发送电子邮件?
- 很好的初学者教程socket.io?
- HtmlSpecialChars在JavaScript中等价于什么?
- React: 'Redirect'没有从' React -router-dom'中导出
- 如何在React中使用钩子强制组件重新渲染?
- 我如何使用Jest模拟JavaScript的“窗口”对象?
- 我如何等待一个承诺完成之前返回一个函数的变量?
- 在JavaScript中根据键值查找和删除数组中的对象
- 使嵌套JavaScript对象平放/不平放的最快方法
- 如何以及为什么'a'['toUpperCase']()在JavaScript工作?
- 有Grunt生成index.html不同的设置
- 文档之间的区别。addEventListener和window。addEventListener?