初探 Google Chrome 对下个版本 JavaScript 的支持

  • Jonathan Allen
  • 郑柯

2012 年 2 月 13 日

话题:JavaScriptChrome语言 & 开发

下个版本的 JavaScript 被称为 ECMAScript 3.1 “Harmony”,Google Chrome 和 V8 现在已经支持其中规划的某些特性。要想尝试这些特性,你可以使用Chrome 的开发频道版本,并且打开“Experimental JavaScript features”标志。

词法定界:现在,“let”关键字替代了“var”关键字,传统的“var”声明会补充“let”和“const”声明。二者都是在块范围内的绑定,这消除了很多错误和诡异行为的主要来源。本地范围的函数声明现在得到正式允许,同时服从词法定界。(注意:词法定界只在 ES 的严格模式中支持。)

集合:高效的 map 和 set 将会让编程容易许多。包括对象的任何值都可以用作键或元素。不再有意外,不再需要把对象强制变为词典。(警告:集合中的迭代访问尚未说明。)

Weak maps:一种特别的 map,当垃圾收集器发现 map 中一个键不再可用时,可以自动做出判断,将键值对从 map 中移除。这么做很有用,包括避免长期存在的表格的内存泄露,还能让开发人员不再担心长期未使用的变量。

代理:代理可以模拟一个 JavaScript 对象或函数,并可自定义能想象得到的任何行为。这是非常强大的功能,将反射带入到更高级别,并可用作实现多种高级抽象和接口

JavaScriptChrome语言 & 开发