WebKit 中的 ECMAScript 6
ES6 为 JavaScript 带来了许多新的、有趣的语言特性。ES6 吸取了 JavaScript 过去的许多教训,并设计了语义更清晰、更容易理解的新语言特性。let
和 const
就是这样的例子;它们是 块级作用域声明,因此不容易出现因误解 var
作用域语义而导致的常见错误。ES6 还包含一些特性,旨在让常见的 JavaScript 惯用法感觉更自然。例如,箭头函数 可以轻松编写具有词法绑定 this
的小型函数;这在 JavaScript 程序员中非常常见。class
语法 使编写在许多程序中常见的经典面向对象代码变得更容易。解构语法 有助于消除在任何足够大的 JavaScript 程序中发现的样板代码。我们 WebKit 团队对 ES6 感到非常兴奋,并一直努力实现它。在 OS X 和 iOS 9 的 Safari 9 中,您将能够使用一些很棒的 ES6 特性
- 类
- Promise
- Map、Set、WeakMap、WeakSet、for…of 循环
- Symbol
- 以及其他很棒的特性
还有更多 ES6 特性,如果您运行最新的 WebKit 夜间构建版本,就可以试用。我们最近实现了
如果您有兴趣关注我们的 ES6 实现并试用 ES6,请下载 WebKit 夜间构建版本。您也可以通过 报告 您发现的任何错误来帮助我们修复当前实现中的缺陷。另外,如果您(没错,就是您,读者)有兴趣为 WebKit 添加任何 ES6 功能,或者只是修复一些错误,我将非常乐意帮助您入门。您可以在 Twitter 上联系我:@saambarati。一如既往,您可以通过 @jonathandavis 提出其他问题。