有没有办法在没有浏览器的情况下运行 Javascript,比如 shell 或批处理脚本?

Pav*_*vel 15 script javascript

有没有一种方法可以像运行 Python、Bash、Windows Batch 或其他脚本语言一样运行 Javascript?

文件访问和其他库函数会很好,但不是必需的 - 这些天我只是最流畅和最有效的 Javascript。不过,每次打开浏览器控制台都相当不舒服。

我对 Windows 环境最感兴趣。

Dav*_*ill 20

有没有办法在没有浏览器的情况下运行 JavaScript,比如 shell 或批处理脚本?

您正在寻找的是JavaScript shells

JavaScript shell 允许您快速测试 JavaScript 代码片段,而无需重新加载网页。它们对于开发和调试代码非常有用。


独立的 JavaScript shell

以下 JavaScript shell 是独立环境,如 perl 或 python。

  • Node.js - Node.js 是一个用于轻松构建快速、可扩展的网络应用程序的平台。
  • JSDB - 一个独立的 JavaScript shell,带有为 Windows、Mac 和 Linux 编译的二进制文件。
  • JavaLikeScript - 一个独立的、可扩展的 JavaScript shell,包括本机和 JavaScript 库。
  • GLUEscript - 用于编写跨平台 JavaScript 应用程序的独立 JavaScript shell。它可以将 wxWidgets 用于 GUI 应用程序,以前称为 wxJavaScript。
  • jspl - 由 Perl 增强的独立 JavaScript shell。可以直接从 JavaScript 使用 perl 模块:用于数据库集成的 DBI、用于 GUI 应用程序的 GTK2、用于系统编程的 POSIX 等。现在是 JavaScript 程序员的最佳 CPAN。
  • ShellJS - Node.js 的便携式 Unix shell 命令
  • Windows 脚本宿主- Microsoft® Windows® 脚本宿主 (WSH) 是 Windows 脚本的独立于语言的脚本宿主。

JavaScript shell


gro*_*taj 10

Node.js正是您要找的。

它基于 V8,与 Chrome 使用的 JavaScript 引擎相同。您可以将其用作 REPL 或从.js文件运行脚本。

Node.js 在商业项目中的受欢迎程度最近在增加。它用于必须处理许多并行连接的服务器。它还用于开发目的,例如Bower(前端开发包管理器)完全用 JavaScript 编写并打算在 Node.js 上运行。


bea*_*ker 7

为了完整起见,不得不提到Windows Scripting Host,它可从 Windows 98 及更高版本获得,并且能够执行 JavaScript 代码

CScript.exe c:\scripts\sample.js
Run Code Online (Sandbox Code Playgroud)

  • @PavelPetrman 小提示:Windows Scripting Host 使用 IE 的 JavaScript 引擎(`jscript.dll` 或 `jscript9.dll`),所以在编写代码时要记住这一点。更多细节:[Chakra Jscript 引擎将如何暴露给脚本宿主?](http://stackoverflow.com/questions/3084927/how-will-the-chakra-jscript-engine-be-exposed-to-scripting-主机),[关于强制 IE9 使用 jscript.dll 而不是 jscript9.dll 的任何信息?](http://www.reddit.com/r/techsupport/comments/n34lk/any_info_on_forcing_ie9_to_use_jscriptdll_instead/)。 (2认同)