lgwebdream / FE-Interview

🔥🔥🔥 前端面试,独有前端面试题详解,前端面试刷题必备,1000+前端面试真题,Html、Css、JavaScript、Vue、React、Node、TypeScript、Webpack、算法、网络与安全、浏览器
https://lgwebdream.github.io/FE-Interview/
Other
6.82k stars 896 forks source link

Day251:详细说一下对 JavaScript 执行上下文的理解 #1070

Open Genzhen opened 3 years ago

Genzhen commented 3 years ago

每日一题会在下午四点在交流群集中讨论,五点小程序中更新答案 欢迎大家在下方发表自己的优质见解

二维码加载失败可点击 小程序二维码

扫描下方二维码,收藏关注,及时获取答案以及详细解析,同时可解锁800+道前端面试题。

luuman commented 2 years ago

执行上下文就是当前 JavaScript 代码被解析和执行时所在环境的抽象概念, JavaScript 中运行任何的代码都是在执行上下文中运行。

执行上下文的类型可以分为三种,分别是全局执行上下文、函数执行上下文和Eval 函数执行上下文

执行栈

  1. 首次运行脚本时会创建全局上下文,在退出时移除
  2. 当调用函数时会创建函数执行上下文,并添加到栈顶,此时的执行上下文即栈顶的上下文
  3. 当函数执行结束时,会从栈顶移除这个执行上下文,此时的执行上下文指向最新栈顶的上下文

https://cloud.tencent.com/developer/article/1654337 https://cloud.tencent.com/developer/article/1604839 https://juejin.cn/post/6889712179264618503