天天看點

Node.js v8.0.0 正式釋出,帶來大量更新

node.js v8.0.0 已正式釋出。v8.0.0 是下一個主要的版本,帶來了一系列重大的變化和新功能,内容十分多,本文包含主要重要的更改和功能的摘要。

npm 5.0.0

npm 最近宣布釋出了 5.0.0 版本的 npm 用戶端,現在在 node.js 8.0.0 中使用了這個重要的新版本。

v8 5.8

node.js 8.0.0 使用了 v8 5.8,這是 javascript 運作時的重要更新,其中包括性能方面和面向開發者 api 的重大改進。對 node.js 開發者來說最重要的是 v8 5.8 保證與 v8 5.9 和即将推出的 v8 6.0 具有 abi 的向前相容性,這将有助于確定 node.js 原生插件生态系統的穩定性。在 node.js 8 的生命周期中,會計劃更新到 5.9 甚至 6.0。

v8 5.8 引擎還有助于設定新的 turbofan + ignition 編譯器管道(compiler pipeline)的轉移,這将為所有 node.js 應用程式提供重要的新的性能優化。雖然 v8 之前的版本已經存在,但 turbofan 和 ignition 将在 v8 5.9 中首次預設啟用。新的編譯器管道代表了這樣一個重大變化 —— node.js 核心技術委員會(ctc)選擇推遲最初釋出安排在 4 月的 node.js 8,以便更好地适應它。

node.js api (n-api)

對于使用或建立原生插件的 node.js 開發者,新的實驗性的 node.js api(n-api)對于現有的 native abstractions for node.js (nan) 來說是一個重大的改進,它将允許原生插件在一個系統上編譯一次,并在多個版本的 node.js 上使用。

通過提供一個新的虛拟機不可知的應用程式二進制接口(abi),原生插件不僅可以在多個版本的 v8 javascript 運作時上運作,還可以在微軟的 chakra-core 運作時上使用。

n-api 在 node.js 8.0.0 中是實驗性的功能。

完全支援 whatwg url 解析器

whatwg url 标準實作的實驗性 url api 去年已經添加到 node.js 7.x 中,自那以來一直在積極發展。現在,從 8.0.0 開始,新的 url 實作現在是 node.js 中完全支援的非實驗性 api。下面展示了一個示例用法,官方文檔中提供了更多詳細資訊。

這個新的 url 實作是最重要的,因為它與現代 web 浏覽器(如 chrome,firefox,edge 和 safari)中的 url 實作和 api 相比對,允許使用 url 在不同環境之間共享代碼。

長期支援

node.js v8 是下一個長期支援(lts)的版本。這将在 2017 年 10 月進入,一旦 node.js 8 轉換到 lts,将會使用代号 carbon。

Node.js v8.0.0 正式釋出,帶來大量更新

還包括以下更新:

更新 async_hooks 子產品

buffer api 引入了大量新變化

新的 util.promisify() api

console 子產品加入 console.log() 和 console.error()

繼續閱讀