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的新功能或改進中,我們主要關注:
據Snell介紹,模塊加載比Node.js 4.x快了近四倍。這意味著應用程序的啟動會非??臁?更全面的測試覆蓋率 更完善的文檔 Buffer 和 File System API 的易用性得到提高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