add: 暂时性死区 DTC
This commit is contained in:
@@ -125,6 +125,12 @@ function foo() {
|
||||
|
||||
打印结果:undefined。注意,打印结果并没有报错,而是 undefined。这个例子,再次说明了:变量 i 在函数执行前,就被提前声明了,只是尚未被赋值。
|
||||
|
||||
例4中, `if(false)`里面的代码虽然不会被执行,但是整个代码有**解析**的环节,解析的时候就已经把 变量 i 给提前声明了。
|
||||
|
||||
|
||||
**总结**:
|
||||
|
||||
既然JS中存在变量提升的现象,那么,在实战开发中,为了避免出错,建议先声明一个变量,然后再使用这个变量。
|
||||
|
||||
|
||||
### 函数的声明提前
|
||||
|
||||
Reference in New Issue
Block a user