TC39敲定ECMAScript 2018特性集
极客时间编辑部
讲述:杜力大小:945.81K时长:02:01
日前举办的 TC39 会议敲定了 ES2018 的特性集,ES2018 是对 ECMAScript 语言规范的最新修订。这次更新中新添加的特性包括:
异步迭代功能(Asynchronous Iteration);
用于对象解构(Object Destructuring)和对象字面量(Object Literal)的 rest 和 spread 操作符;
大幅改进了正则表达式;
对 Promise 和模板字面量(Template Literal)做了进一步改进。
据介绍,新敲定的异步迭代功能,原生支持在 JavaScript 中对异步获取的数据做迭代。异步获取方式包括 Node.js 中的文件读取、浏览器中的 WebSocket 等。该特性在扩展了已有的生成器和循环功能的同时,在语言中引入了两个新的关键字:async 和 await。
有专家称,async 和 await 无疑是 JavaScipt 在过去数年中添加的最具革命性的特性之一。该特性可以使开发人员认识到一个语法混乱的 Promise 是什么样的,并为此提供了直观的替代解决方案。
这一异步迭代功能可以使用 Babel 做源码到源码的编译,并在 Node.js 7.6 之后的版本、Chrome、Firefox 和 Safari 技术预览版中提供原生支持。
新规范中还添加了支持对象字面量的 spread/rest 语法。ECMAScript 自 ES2015 以来就已经在数组上支持该语法,此次更新是对该语法的一个泛化。该特性同样可以使用 Babel 做源码到源码的编译,并在 Node.js 8.6 以后的版本、Chrome、Firefox 和 Safari 技术预览版中提供原生支持。
对于已有的功能而言,新规范中的最大更改是对正则表达式的改进,添加了一系列新特性。这些特性已经在其它一些语言中存在,只是还没有在 JavaScript 中得到支持,包括 DOTALL 模式、后行断言(Lookbehind Assertions)、命名捕获组(named capture group)和 Unicode 属性转义(Property Escape)等。
最后要介绍的 2018 规范中的更改,就是对模板字面量功能的修改,允许了一些以前是非法的字符序列。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论