params default value & params environment & TDZ
看 ES6 parameter default value 的时候,发现一些很困惑的现象。
|
|
结果是 reference error: y is not defined. 因为这里 y 是处在 TDZ
(Temporal Dead Zone)。
|
|
可是为什么呢,明明全局有定义 y 呀,为什么未定义?难道参数默认值有单独的作用域?继续试验:
看 ES6 parameter default value 的时候,发现一些很困惑的现象。
|
|
结果是 reference error: y is not defined. 因为这里 y 是处在 TDZ
(Temporal Dead Zone)。
|
|
可是为什么呢,明明全局有定义 y 呀,为什么未定义?难道参数默认值有单独的作用域?继续试验:
ES6的class
提供了一个简洁的语法糖来实现之前通过原型链来实现的Class的功能。
截止目前(2015-04-05),Class目前还基本没有浏览器支持,除了Firefox39最新版已经实现了。具体的支持情况可以在这里看到:ECMAScript compatibility table
可以通过Traceur来试验Class的功能。