21.说一说JS变量提升?
得分点:
Var声明的变量声明提升、函数声明提升、let和const变量不提升
标准回答:
- 变量提升:
是指JS的变量和函数声明会在代码编译期,提升到代码的最前面。
- 变量提升成立的前提:
是使用Var关键字进行声明的变量,并且变量提升的时候只有
声明被提升,赋值并不会被提升,同时函数的声明提升会比变量的提升优先
- 变量提升的结果:
可以在变量初始化之前访问该变量,返回的是
undefined。在函数声明前可以调用该函数。
加分回答:
使用let和const声明的变量是创建提升,形成暂时性死区,在初始化之前访问let和const创建的变量会报错。
💞💖💓💗每个时代,
✨🌟⭐️💫都悄悄犒赏会学习的人。

JS中的变量提升涉及到var声明的变量和函数声明的提升,它们在编译阶段会被提升到作用域顶部,赋值不被提升。而let和const则不会提升,而是形成暂时性死区,提前访问会导致错误。这强调了正确理解和使用变量声明的重要性。

被折叠的 条评论
为什么被折叠?



