如何轻松执行 JavaScript 文件

How can I execute a JavaScript file easily?

本文关键字:文件 JavaScript 执行 何轻松      更新时间:2023-09-26

当我学习Perl和Python时,我的"开发环境"由vim和一个shell组成。我只需用 vim 编写程序,然后从命令行执行它。我知道蜘蛛猴引擎可以作为独立的解释器使用,但我不确定它有多实用。

JS的"直观"方法是将脚本合并到网页中并在不同的浏览器中查看它,但这似乎很麻烦。我看过一些关于Firebug的建议,但我不能完全掌握它。

我知道 vim 有几个面向 JS 的插件,但同样我不知道它们有多实用。

我基本上想写一个脚本,并快速检查它的语法和输出。我也有兴趣了解实际的JS开发人员如何测试他们的代码。

我经常使用 Node.js,所以我的答案会因此而有偏见,但是......

  1. 为了学习这门语言,Node.js 只需在命令行中键入 node即可为您提供易于使用(如 Python、Ruby 等)的 REPL。
  2. 使用Zombie
  3. 可以很好地验证您的网站,Zombie是在Node.js中实现的无头浏览器。如果你的Javascript在语法上是错误的,一旦你尝试加载页面,你就会得到一个错误。如果你的Javascript在语义上是错误的(逻辑不好),那么你为验证代码的正确行为而编写的测试将会失败。
  4. 你最终将不得不在Firefox,IE等中进行测试,但不是真正的Chrome,因为它们都使用相同的V8引擎(当然,你可能想粗略地看一眼)。您可能知道,IE与其他浏览器的偏差最大,因为它没有实现功能或给它们一个不同的名称。令人惊讶的是,Firefox 也非常离经叛道,但不在于缺少功能,而是在 Javascript 语言中拥有许多其他浏览器没有的额外功能(他们作为 ECMAScript 标准的一部分提出但被拒绝),所以如果你想让你的代码在每个解释器上运行,实际上是一个主意,不要从那里开始。

使用 Node.js您还将拥有一个更快的服务器端解释器(比 Python 和 Ruby 更快,大致等于 Lua,有时甚至达到 Java 的水平,不知何故 V8 拥有世界上最快的 RegEx 引擎),然后服务器端代码匹配客户端代码,这使得 RPC 层之类的东西更好用。