Node.js v8.0.0 正式发布,带来大量更新

局长
 局长
发布于 2017年05月31日
收藏 20

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。下面展示了一个示例用法,官方文档中提供了更多详细信息。

const URL = require('url').URL;

const myUrl = new URL('/a/path', 'https://example.org/');

这个新的 URL 实现是最重要的,因为它与现代 Web 浏览器(如 Chrome,Firefox,Edge 和 Safari)中的 URL 实现和 API 相匹配,允许使用 URL 在不同环境之间共享代码。

长期支持

Node.js v8 是下一个长期支持(LTS)的版本。这将在 2017 年 10 月进入,一旦 Node.js 8 转换到 LTS,将会使用代号 Carbon。

还包括以下更新:

  • 更新 async_hooks 模块

  • Buffer API 引入了大量新变化

  • 新的 util.promisify() API

  •  console 模块加入 console.log() 和 console.error()

更多内容请参阅发布主页更新日志

下载地址

>>>【全民狂欢,评论有礼】5月15日-31日评论每日更新的“新闻资讯和软件更新资讯”,评论点赞数超过 20 的可登上每周更新的“源资讯”和“软件周刊”两大栏目,点赞数超过 50 的还将获得 5 活跃积分奖励和开源中国定制好礼。详情

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:Node.js v8.0.0 正式发布,带来大量更新
加载中

精彩评论

hezf
hezf

引用来自“Mr小赵”的评论

我好奇npm5.0做了哪些改进?
具体改进不知道,速度倒是真快,无论是安装还是移除,速度嘎嘎快。
ChengShuai
ChengShuai
上午已经把之前的7.10换成了8.0😊
边城
边城

引用来自“Mr小赵”的评论

我好奇npm5.0做了哪些改进?

引用来自“hezf”的评论

具体改进不知道,速度倒是真快,无论是安装还是移除,速度嘎嘎快。
yarn 给它压力不小哇
宇天
宇天
坐等小白鼠,我等 8.1.0出来
开源中国123456789
开源中国123456789

引用来自“eechen”的评论

Node已经超过PHP7直追Java8(J8)了.
https://static.oschina.net/uploads/space/2017/0507/114545_l2Gp_561214.png
大神,有人向你挑战你为啥不迎战?不能怂啊

最新评论(26

边城
边城

引用来自“hvick”的评论

等待LTS默认支持async/await

引用来自“紫外線”的评论

node7不支持吗?
LTS 还只有 6 啊,刚看了下 LTS 计划……7已经完了,没有 LTS
边城
边城

引用来自“Mr小赵”的评论

我好奇npm5.0做了哪些改进?

引用来自“穗溪”的评论

在npm5.0上我似乎看到了yarn的身影
试下了,npm5 下载的 node_modules 结构和 yarn 的一样,扁平化了。从我这里的试验来看,npm5 比 yarn 还快些。
边城
边城

引用来自“Mr小赵”的评论

我好奇npm5.0做了哪些改进?

引用来自“hezf”的评论

具体改进不知道,速度倒是真快,无论是安装还是移除,速度嘎嘎快。
yarn 给它压力不小哇
回去干活
回去干活
这语法,再怎么改也就那个样,还是继续使用golang.
穗溪
穗溪

引用来自“Mr小赵”的评论

我好奇npm5.0做了哪些改进?
在npm5.0上我似乎看到了yarn的身影
布老虎
布老虎
node 8没进入LTS之前还是继续用6的好
musicq
musicq

引用来自“hvick”的评论

等待LTS默认支持async/await
一直不敢直接用 es6特性,因为害怕性能问题,都是使用编译后的 es5代码
kobezone
kobezone
总升级 感觉都跟不上了 哈哈
hezf
hezf

引用来自“Mr小赵”的评论

我好奇npm5.0做了哪些改进?
具体改进不知道,速度倒是真快,无论是安装还是移除,速度嘎嘎快。
返回顶部
顶部