JavaScript中的变量提升是如何在函数作用域和全局作用域中自动将变量声明移至代码顶部执行的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计5142个文字,预计阅读时间需要21分钟。
目录+前言
1.什么是变量提升?
2.为什么会有变量提升?
(1) 提高性能 (2) 提高容错性3.变量提升导致的问题
(1) 变量被覆盖 (2) 变量未被销毁4.禁止变量提升
5.JS如何支持块级作用域
目录
- 前言
- 1. 什么变量提升?
- 2. 为什么会有变量提升?
- (1)提高性能
- (2)容错性更好
- 3. 变量提升导致的问题
- (1)变量被覆盖
- (2)变量没有被销毁
- 4. 禁用变量提升
- 5. JS如何支持块级作用域
- (1)创建执行上下文
- (2)执行代码
- 6. 暂时性死区
- 总结
前言
在 ECMAScript6 中,新增了 let 和 const 关键字用来声明变量。在前端面试中也常被问到 let、const和 var 的区别,这就涉及到了变量提升、暂时性死区等知识点。下面就来看看什么是变量提升和暂时性死区。
本文共计5142个文字,预计阅读时间需要21分钟。
目录+前言
1.什么是变量提升?
2.为什么会有变量提升?
(1) 提高性能 (2) 提高容错性3.变量提升导致的问题
(1) 变量被覆盖 (2) 变量未被销毁4.禁止变量提升
5.JS如何支持块级作用域
目录
- 前言
- 1. 什么变量提升?
- 2. 为什么会有变量提升?
- (1)提高性能
- (2)容错性更好
- 3. 变量提升导致的问题
- (1)变量被覆盖
- (2)变量没有被销毁
- 4. 禁用变量提升
- 5. JS如何支持块级作用域
- (1)创建执行上下文
- (2)执行代码
- 6. 暂时性死区
- 总结
前言
在 ECMAScript6 中,新增了 let 和 const 关键字用来声明变量。在前端面试中也常被问到 let、const和 var 的区别,这就涉及到了变量提升、暂时性死区等知识点。下面就来看看什么是变量提升和暂时性死区。

