本书编写时,已确定随ES7(ECMAScript 2016)发布的功能只有一个,就是Array.prototype.includes
。
还有一些功能已经接近完成,有可能随ES7发布,但还未最终确定。
幂运算符
SIMD.JS:API和填充脚本
异步函数
Object.values
和Object.entries
字符串填充
函数参数列表以逗号结尾
进行数学运算时,新的幂运算符**
很方便,有了它,Math.pow(2, 3)
可以简化为2 ** 3
。
我们在第2章会进一步了解Array.prototype.includes
的功能。
更多关于ES7的信息,请访问https://tc39.github.io/ecma262/。
ES6和ES7的向下兼容性
我需要把现有的JavaScript代码更新到ES6或ES7吗?当然不用!ES6和ES7是JavaScript语言的子集。所有ES5规范的特性都可以继续使用。不过,你可以开始使用ES6和ES7的新语法,让代码变得更简单易读。
在本书接下来的章节中,我们会尽可能地使用ES6和ES7。如果你想使用ES5编写示例代码,可以用Babel把书中的代码转译到ES5。
我们要创建的这些例子也有ES5语法的版本,请访问GitHub仓库的master分支(https://github.com/loiane/javascript-datastructures-algorithms)。
好了,我们已经介绍了一些必要的JavaScript基础概念,是时候开始寻找数据结构和算法的乐趣了!