本書編寫時,已確定隨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基礎概念,是時候開始尋找數據結構和算法的樂趣了!