Node.js 6.0 正式发布了,这将是当前最新的版本。该版本包括性能的提升、更全面的测试、更完善的文档,安全性更强并且支持更广泛的ES2015语法。
Node.js 6.0 是在5.0版本(六个月前发布)之后发布的,但实际上它是 Node.js 4.x 的替代,从今年十月份开始它将成为下一个长期支持(LTS)版本。据IBM Node.js技术负责人 James Snell介绍 ,Node.js 6.0 (Current) 包括“部分性能的显著改善、提高了可靠性、可用性、安全性”。如果是生产环境需要保证稳定,Snell建议十月份以前仍使用Node.js 4.x版本。Node.js v4.x 的长期支持会持续到2017年4月,之后进入维护更新阶段。想要了解更多Node基金会标记版本的细节,我们建议阅读 Node.js长期支持工作组 的说明。 Node.js 5.0 是为喜欢尝试的勇敢者提供的过渡版本。
Node.js 6的新功能或改进中,我们主要关注:
Node.js 6.0一个重大改进是使用V8 5.0,支持93%的ES2015语法。根据 Kangax兼容性表 ,每日构建甚至支持96%的ES2015语法,包括解构(destructuring)、剩余参数(rest parameters)、类(class)以及super关键字。不支持的有直接或相互递归、迭代器关闭等其它一些语法。其中一些已经准备好了,但需要harmony flag才能使用。
在安全性方面的改进,Node.js基金会在其 公告 中提到:
新的Buffer API使用新的构造器创建Buffer实例,并引入了zero-fill-buffers命令行标志,这样会减少错误的风险并且避免漏洞泄露到应用程序中。使用新的命令行标志,开发人员可以继续安全地使用旧的模块,即使这些模块没有更新,没有使用新的构造器API。另外,V8改进了Math.random()的实现,使之更安全——这个特性也添加到了 Node.js v6。
另一个值得一提的改变是不再支持Windows XP和Vista。另外,由于Node.js 6使用了V8 5,所有的插件需要重新编译。完整的变化清单,我们建议阅读 Snell的帖子 。
除了Node基金会在其公告中提到的Node.js“超过350万用户和100%的年增长速度”, npmjs公布了一些NPM统计数据 :211000NPM注册用户中73000用户至少发布了一个包,每月有超过300万唯一的IPs访问NPM注册表,大约有400万用户,三月份有超过8千万的NPM会话,每星期有超过10亿的包下载量。这些数字显示出JavaScript,Node.js和NPM构建的生态系统正在蓬勃发展。
查看英文原文: Node.js 6.0 Supports 93% of ES2015
感谢张龙对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们。