mirror of
https://github.com/ruanyf/es6tutorial.git
synced 2025-05-25 03:02:21 +00:00
commit
e2c81a77d9
@ -142,7 +142,7 @@ function bar(x = 2, y = x) {
|
||||
bar(); // [2, 2]
|
||||
```
|
||||
|
||||
ES6规定暂时性死区和不存在变量提升,主要是为了减少运行时错误,防止在变量声明前就使用这个变量,从而导致意料之外的行为。这样的错误在ES5是很常见的,现在有了这种规定,避免此类错误就很容易了。
|
||||
ES6规定暂时性死区和修订变量提升,主要是为了减少运行时错误,防止在变量声明前就使用这个变量,从而导致意料之外的行为。这样的错误在ES5是很常见的,现在有了这种规定,避免此类错误就很容易了。
|
||||
|
||||
总之,暂时性死区的本质就是,只要一进入当前作用域,所要使用的变量就已经存在了,但是不可获取,只有等到声明变量的那一行代码出现,才可以获取和使用该变量。
|
||||
|
||||
@ -359,7 +359,7 @@ function f() { console.log('I am outside!'); }
|
||||
|
||||
注意,上面三条规则只对ES6的浏览器实现有效,其他环境的实现不用遵守,还是将块级作用域的函数声明当作`let`处理。
|
||||
|
||||
前面那段代码,在Chrome环境下运行会报错。
|
||||
前面那段代码,在老版本的Chrome环境下运行会报错。
|
||||
|
||||
```javascript
|
||||
// ES6的浏览器环境
|
||||
|
Loading…
x
Reference in New Issue
Block a user