直接上代码:
var temp = 20;
if(true){
temp = "abc";
let temp;
}
执行结果是浏览器报错。
出现该问题的原因是:在if的大括号“{}”内的块级作用域中出现了let定义了temp变量,在该作用域内let定义temp之前该变量都是不可用的。
这种现象被称为暂时性死区,简称(TDZ)。
直接上代码:
var temp = 20;
if(true){
temp = "abc";
let temp;
}
执行结果是浏览器报错。
出现该问题的原因是:在if的大括号“{}”内的块级作用域中出现了let定义了temp变量,在该作用域内let定义temp之前该变量都是不可用的。
这种现象被称为暂时性死区,简称(TDZ)。