NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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:003628
用户头像

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

关注

评论

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

一篇就够:高性能推理引擎理论与实践(TensorRT)

AIWeker

深度学习 推理引擎 签约计划第三季 TensorRT

RocketMQ事务消息

急需上岸的小谢

8月月更

小菜鸟河北联通上岗培训随笔

乌龟哥哥

8月月更

IntelliJ IDEA 打开近期工作的项目的对话框的快捷键

HoneyMoose

RT-Thread记录(五、RT-Thread 临界区保护与FreeRTOS的比较)

矜辰所致

RT-Thread 8月月更 临界区保护

【算法岗必看系列】机器学习高频面试题

码农鬼仔

人工智能 机器学习算法 机器学习笔记 机器学习/深度学习 常见面试题

IPv6基础知识

穿过生命散发芬芳

ipv6 8月月更

前后端分离跨域问题

青柚1943

CORS 跨域

构建在Findora上的Forlend,具备隐私特性的借贷协议

鳄鱼视界

用第一性原理根治数字化转型雾霾:以规则的确定性应对结果的不确定性

三少爷的见

数字化转型 软件开发技术的第一性原理 签约计划第三季

Android进阶(十四)Android Adapter详解

No Silver Bullet

android Adapter 8月月更

开源一夏 | 使用 JavaScript 和 CSS 的简单字符计数器

海拥(haiyong.site)

开源 8月月更

什么是操作系统?

Jackpop

[极致用户体验] 我做的《联机五子棋》是如何追求极致用户体验的?(上)

HullQin

CSS JavaScript html 前端 8月月更

【精通内核】计算机内存地址原理深度解析

小明Java问道之路

内存 intel 签约计划第三季 8月月更 分段分页

Java参数传递到底是按 值传递 还是 引用传递 ?

史俊锋在搬砖

Java 后端 编程基础 签约计划第三季

如何可视化编写和编排你的 K8s 任务

阿里巴巴云原生

阿里云 容器 云原生 可视化

头脑风暴:零钱兑换2

HelloWorld杰少

算法 LeetCode 8月月更

大佬,还记得设计模式的六大设计原则吗?

知识浅谈

设计原则 8月月更

Java 中使用 public,private 和 protected 修饰的方法

HoneyMoose

MyBatis(二、基础进阶)

mybatis springmvc 8月月更

Redis面试总结

TimeFriends

8月月更

Android进阶(十三)json应用

No Silver Bullet

json android 8月月更

层次分明井然有条,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang包管理机制(package)EP10

刘悦的技术博客

Go 教程 Go 语言 教程分享 编程语言‘

【精通内核】计算机程序的执行原理深度解析

小明Java问道之路

内核 ELF 签约计划第三季 8月月更 方法调用

介绍一个python工程师必须掌握的 CentOS 命令,nohup

梦想橡皮擦

Python 爬虫 8月月更

网络编程(二)TCP/IP

Albert Edison

网络编程 网络 TCP/IP 8月月更

云原生(十六)| Kubernetes篇之深入RC、RS、DaemonSet、StatefulSet

Lansonli

云原生 8月月更

3 分钟创建 Serverless Job 定时获取新闻热搜!

阿里巴巴云原生

阿里云 Serverless 云原生

TDengine 3.0 重磅发布,首届开发者大会圆满结束

TDengine

数据库 tdengine 时序数据库

Kruise Rollout:灵活可插拔的渐进式发布框架

阿里巴巴云原生

阿里云 开源 云原生 OpenKruise

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