JavaScript之之变量提升

变量提升定义:所有变量的声明语句都会被提升到代码头部

JS的变量提升原理:  先解析代码,获取所有被声明的变量,然后再运行。

专业说法分为预编译和执行两个阶段,

变量提升分为普通的变量提升和函数声明的提升。

函数提升是整个函数的提升,如果采用赋值语句定义函数,就是只对变量名的提升--即函数表达式,

JavaScript的函数作用域是指在函数内声明的所有变量在函数体内始终是可见的.有意思的是,这意味着变量在声明之前甚至已经可用,JavaScript的这个特性被非正式的称为声明提前.

暂时性死区:

 在代码块内,使用let命令声明变量之前,该变量都是不可用的,这在语法上称为暂时性死区(TDZ)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容