暂时性死区的定义:只要进入当前作用域,所要使用的变量就已经存在,但是不可获取,只有等到声明变量的那一行代码出现,才可以获取和使用该变量。
红包书(版本四):在解析代码时,JavaScript引擎也会注意出现在块后面的let声明,只不过在此之前不能以任何方式来引用未声明的变量。在let声明之前的执行瞬间被称为"暂时性死区",在此阶段引用任何后面才声明的变量都会抛出ReferenceError
//name会被提升
console.log(name);//undefined
var name = 'Matt';
//age不会提升
console.log(age);//ReferenceError:age没有定义
let age = 26;