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

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

Node使用Google V8 ,它实现了ECMAScript标准 (链接到非官方注释的副本)

它与浏览器的区别取决于你所使用的浏览器(和版本)。


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

JavaScript包括:

  • for each - in循环
  • 解构作业
  • let表情
  • 数组理解

…使用非ECMAScript标准语法的其他增强function。 这些都是JavaScript的一部分,但目前不是ECMAScript标准的一部分。

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

不是。语法完全一样。 然而,在apis有不同。 标准浏览器dom在节点中不可用,但它在nodejs.org上有另外的apis。 任何语法差异都是由于浏览器中的怪癖造成的。

没有。语法是非常相同的,但是你正在使用它提供的不同的环境 – 例如,你没有DOM,并有文件系统访问和套接字的API。