【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Node.js 6.0 支持 93% 的 ES2015 语法

  • 2016-05-05
  • 本文字数:1137 字

    阅读完需:约 4 分钟

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


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-05-05 19:003625
用户头像

发布了 31 篇内容, 共 96770 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

跟着动画学Go数据结构之冒泡排序

宇宙之一粟

golang 数据结构 算法 12月日更

IM会话阅读回执

superman

IM 已读未读 阅读回执

反序列化漏洞原理详解

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

48 K8S之Ingress控制器部署

穿过生命散发芬芳

k8s 28天写作 12月日更

架构实战营模块二作业

曾竞超

架构实战营 「架构实战营」

Git 报错:fatal: destination path ‘.‘ already exists and is not an empty directory.

liuzhen007

28天写作 12月日更

☕【Java深层系列】「技术盲区」让我们一起去挑战一下如何读取一个较大或者超大的文件数据!

洛神灬殇

Mmap 12月日更 MappedByteBuffer FileChannel

情绪价值

搬砖的周狮傅

情绪

前端开发:关于Vue组件中的data属性值是函数而不是对象的详解

三掌柜

28t 28天写作 12月日更

下班之后的生活

卢卡多多

28天写作 12月日更

避免创建不必要的对象

李子捌

28天写作 12月日更

营销思维:新消费品牌如何做营销

石云升

营销 28天写作 新消费 12月日更

C#中如何使用Dapper

喵叔

28天写作 12月日更

模块二课程作业

李晓笛

架构实战营

围棋

圣迪

AI 数学 围棋 中国象棋 解空间

网络安全2.0主动防御体系有哪些新思路?

喀拉峻

网络安全 安全 渗透测试 渗透

Prometheus Exporter (三十)IPMI Exporter

耳东@Erdong

Prometheus 28天写作 exporter 12月日更 IPMI

RocksDB 相关资料

Joseph295

存储 RocksDB LSM树 KV存储引擎

CSS之选择器(十)<label> 和 <input>

Augus

CSS 12月日更

【docker 总结】第六篇 - DockerCompose

Brave

Docker 12月日更

如何在 Linux 中使用 apt 命令管理包

Ethereal

Linux 运维 apt 网络技术联盟站

JVM学习笔记

Changing Lin

12月日更

kubernetes APIServer是如何限流的?

xcbeyond

Kubernetes 限流 28天写作 12月日更

[Pulsar] 设置认证和鉴权

Zike Yang

Apache Pulsar 12月日更

无快不破,在本地 docker 运行 IDEA 里面的项目?

秦怀杂货店

Java 后端 springboot dcoker

语音信号处理4:语音信号的产生之语音的发音器官

轻口味

28天写作 12月日更

Kubernetes 为何称为 K8s?

Ethereal

Kubernetes k8s 运维工程师

DDD领域驱动设计实战(四)-值对象

JavaEdge

12月日更

架构实战 模块二作业

mj4ever

架构实战

元宇宙100讲-0x006

hackstoic

元宇宙

家具电商

张老蔫

Node.js 6.0支持93%的ES2015语法_JavaScript_Abel Avram_InfoQ精选文章