0

所有系统级 javascript 引擎(Node、Rhino 等)都实现了commonjs规范,该规范声明所有代码都必须包装在匿名函数中。因此,与上下文相关的实验不会产生与在浏览器中相同的结果。

比如下面的 if 在 node 下运行;会产生与在 Firebug 中运行时不同的结果:

var inner;

inner = 'inner';
this.inner = 'overriden';
console.log(inner);          // node: inner // firebug: overriden

对我来说,在我的Ubuntu终端中进行这些实验比在浏览器中更有效。是否有一个 js 运行时可以模拟浏览器的运行时,就像它在我的终端中一样?

4

1 回答 1

1

我发现phantomjs与浏览器特定的 javascript 最兼容。. 这可能是因为 phantomjs 本身就是一个无头浏览器。然而,它提供了一个命令行控制台和一种从命令行运行 js 脚本的方法。

于 2014-04-25T07:33:52.120 回答