Open ForeveHG opened 4 years ago
所谓的变量提升就是js代码在执行时需要先初始化它的变量环境(VariableEnvironment),在初始化变量环境时,function,var,let,const的表现各有不同。 首先声明一个变量可以简单理解为创建,初始化和赋值三个步骤,在初始化变量环境时,function就创建,初始化,并赋值完成,var创建,初始化为undefined,但没有赋值,let只是先创建,没有初始化也没有赋值,const创建和初始化了
其中const与其他不同,const只能在初始化变量环境时进行初始化,之后不能对它赋值
所谓的变量提升就是js代码在执行时需要先初始化它的变量环境(VariableEnvironment),在初始化变量环境时,function,var,let,const的表现各有不同。 首先声明一个变量可以简单理解为创建,初始化和赋值三个步骤,在初始化变量环境时,function就创建,初始化,并赋值完成,var创建,初始化为undefined,但没有赋值,let只是先创建,没有初始化也没有赋值,const创建和初始化了
其中const与其他不同,const只能在初始化变量环境时进行初始化,之后不能对它赋值