ES8 的5特征以及对 ES9 的展望
来源:互联网 发布:淘宝 不经过物流 收货 编辑:程序博客网 时间:2024/05/16 14:15
ES8即将发布,在ES7的基础上,ES8做了进一步的更新和优化,本文主要阐述ES8的5个重要特性。
1.Object.entries 和 Object.values
这是非常令人激动的改变,已经在 dojo 2 中共享了一些东西。
当一个对象被用作哈希过滤器时,通常需要知道该对象的值。这对大多数库和工具箱中找到的方法进行了标准化。
类似地,它通常用于迭代或序列化, 以便从对象或其项中拥有键/值对的数组。用 ES6 映射构造函数接受可迭代项,及其关联的项迭代器,这使得通过将项传递到映射构造函数从而更容易地将一个纯对象转换为映射。
Github 回顾: Object.values/Object.entries
2. String.prototype.padStart / String.prototype.padEnd
在 leftpad 事件发生后, 我们最终将字符串填充添加到语言中。这是我们在 dojo 中所拥有的, 并快速的为字符串填充进行了移植。
这是一个简单的功能, 正因为它是如此简单的实现, 导致在语言中被忽略了。但是我们很乐意把这当成语言的一部分。
Github 回顾:String.prototype.padStart / String.prototype.padEnd
3. Object.getOwnPropertyDescriptors
ES 缺少正确复制两个对象之间的属性的方法。这个方案解决了这个看似简单但复杂的问题, 并且它在几乎每个JS工具包或框架中都得到了执行。目前,这是一个阻碍,有效的不变性,ES类的真实组合,将有益于Decorators,但是相对于Object.assign,并不令人惊讶。
Github 回顾:Object.getOwnPropertyDescriptors
4.Async functions(异步函数)
在ES 中引入Promises和generators 极大的提高了我们如何通过改进与生成器并行的控制流结构来编写异步代码。
这一变化非常重要, 我们很高兴看到这种语言的实现, 因为它是我们编写异步代码的一个主要缺失部分。
Github 回顾:Async functions
5.Shared memory and atomics(共享内存和原子)
在完成的 ES8 功能中, 开发者要理解和使用这一特性所花费的时间应该是最多的。这是以非常小的方式实现的, 以说明 "此时提议只向ECMAScript添加低级原语;我们期望开发者社区能够将这些抽象概念集成在一起,有助于在特定的领域中使用。
注:原子对象提供了作为静态方法的原子操作。它们与 SharedArrayBuffer 对象一起使用。
Github 回顾:Shared memory and atomics
更新:ES8 中的两个功能
自从这篇文章第一次出版以来, ES8 / ES2017的另一个功能已经完成, 取消模板文字限制, 这使得将其他特定的域语言嵌入到模板文本更容易。
我们还从原始列表中排除了一个功能, 支持参数列表调用中的尾随逗号。虽然这不是语言的一个重大变化, 但它很可能会节约每个 javascript 使用者的时间, 并且希望能阻止每个行的参数或属性列表中的逗号。
下面是对ES9的展望和希望超越的地方!
l 可观测,反应式架构的关键 (Observables shim for Dojo 2)
l 全局, 一致地引用全局对象的标准 ((global shim for Dojo 2)dojo 2 的全局填充)
l trimStart / trimEnd,padStart / padEnd的模拟
l 导入, 从 es 模块标准中缺失的动态导入
l 类和属性decorators (已在TypeScript中实现)
l 异步迭代
l 单指令多数据(SIMD),它应该加速渲染和动画,如WebGL,Canvas等)
很高兴利用ES8中的功能,并期待今后更多的优化,看到JavaScript的不断改进和发展,让人为之一振!
- ES8 的5特征以及对 ES9 的展望
- 对计算机专业的展望
- 对大学的展望
- 你所要知道EcmaScript 2017(ES8)的一些新特征
- 对flash cs5的展望
- 对QQ的一点展望
- 对14年的总结,以及对15年的展望
- kubernetes 1.3 版本的一些新功能以及对未来功能的展望
- ECMAScript2017(ES8)主要的新特性
- 关于 ES7/ES8的一些新特性
- 对 Linux 内核的发展方向的展望
- 2011年总结以及2012的展望
- SOA特征简介与Web扩展服务的前景展望
- SOA特征简介与Web扩展服务的前景展望
- SOA特征简介与Web扩展服务的前景展望
- 我对大学生活的目标和对计算机专业的展望
- ES8
- 对搜索引擎不友好的特征
- 想说爱你不容易
- 解决jsp通过地址栏传递中文乱码
- 1021区间dp-51nod
- Winform 控件大小自动调整(Anchor Dock 重写方法百分比自动调整)
- Bootastrap之模态框插件
- ES8 的5特征以及对 ES9 的展望
- SIFT 三线性差值原理与代码分析
- LeedCode 之 Merge Two Sorted Lists
- 154.n1-sharedPreferences实现只进一次导航页
- Pycharm+SSH远程连接tensorflow
- Java WebService 简单实例
- 5-52 单词长度 (15分)
- hibernate的小问题
- 如鹏java学习进程 将输入的正整数相加,ok结尾