问题背景
用Node.js的朋友们都知道,自从Node.js
和io.js
两个项目一言不合分开了,最后又合并并成立了Node基金会
。Node.js
项目的开发就迈入了火箭般地高速进展中。同时也分成了LTS (Long Term Support)
和非LTS
两个版本。这里顺便再科普下,偶数的都是LTS版本,奇数的都是非LTS版本。比如当前的4.x.x就是LTS版本,6.x.x就是未来的LTS版本(2016年10月后),而5.x.x和7.x.x就是非LTS版本,具体可以参看官方的LTS发布计划图。这两个版本的区别就是:LTS稳定但新特性少,非LTS就会积极地更新V8
从而获得最新的语言层面新特性的支持。大家最关心的就是对ES6(也就是ES2015)语法的支持。那么问题来了:我怎么样才能知道我当前所使用的Node.js
共支持哪些ES6
的语法呢?
解决方案一:自己通过Node REPL试
这个办法很简单粗暴,直接在Node环境中试就行了,如果不支持,就会报错。运行正常就说明支持。
解决方案二:看node.green文档
这个办法也是本文要推荐的一个办法,如果你想一览Node不同版本对所有ES6
的特性支持情况,就可以参看node.green这个网站,该网站基于ECMAScript 6 Compatibility Table做了一个Node.js
专用版。通过这个网站可以非常直观的看到不同版本Node.js
对ES6
特性的支持情况,并且每个特性旁边都有该特性的示例。
当然了,最理想的是你的编辑器直接能够对你编写的ES6的代码进行提示,当前Node.js
环境是否支持。