node.js和浏览器之间JavaScript的语法区别是什么?

时间:2011-09-13 17:09:48

标签: javascript node.js

浏览器支持JavaScript,Node.js也支持JavaScript。我想知道它们之间是否存在语法差异?

3 个答案:

答案 0 :(得分:14)

节点使用Google V8,它实现ECMAScript standard (链接到非官方注释副本)

它与浏览器的不同之处取决于您所谈论的浏览器(和版本)。


例如,Mozilla浏览器实现了 JavaScript (它是 ECMAScript 的实现和超集)。

JavaScript 包括:

  • for each - in循环
  • 解构转让
  • let表达式
  • 阵列理解

...使用非 ECMAScript 标准语法的其他增强功能。这些都是 JavaScript 的一部分,但 ECMAScript 标准的当前部分。

(在列出的4个项目中,最后3个是下一个ECMAScript版本的提案。)

答案 1 :(得分:5)

没有。语法完全相同。然而,apis存在差异。标准浏览器dom在节点中不可用,但在nodejs.org处有额外的api。任何语法差异都是由于浏览器中的怪癖造成的。

答案 2 :(得分:1)

没有。语法完全相同,但您正在使用它提供不同的环境 - 例如,您没有DOM并且具有用于文件系统访问和套接字的API。