美文网首页
JavaScript 面试系列:JavaScript 中执行上下

JavaScript 面试系列:JavaScript 中执行上下

作者: you的日常 | 来源:发表于2022-10-19 16:35 被阅读0次
image.png

一、执行上下文

简单的来说,执行上下文是一种对Javascript代码执行环境的抽象概念,也就是说只要有Javascript代码运行,那么它就一定是运行在执行上下文中

执行上下文的类型分为三种:

  • 全局执行上下文:只有一个,浏览器中的全局对象就是 window对象,this 指向这个全局对象
  • 函数执行上下文:存在无数个,只有在函数被调用的时候才会被创建,每次调用函数都会创建一个新的执行上下文
  • Eval 函数执行上下文: 指的是运行在 eval 函数中的代码,很少用而且不建议使用

下面给出全局上下文和函数上下文的例子:


image.png

紫色框住的部分为全局上下文,蓝色和橘色框起来的是不同的函数上下文。只有全局上下文(的变量)能被其他任何上下文访问

可以有任意多个函数上下文,每次调用函数创建一个新的上下文,会创建一个私有作用域,函数内部声明的任何变量都不能在当前函数作用域外部直接访问

二、生命周期

执行上下文的生命周期包括三个阶段:创建阶段 → 执行阶段 → 回收阶段

创建阶段

创建阶段即当函数被调用,但未执行任何其内部代码之前

创建阶段做了三件事:

相关文章

  • JavaScript 面试系列:JavaScript 中执行上下

    一、执行上下文 简单的来说,执行上下文是一种对Javascript代码执行环境的抽象概念,也就是说只要有Javas...

  • Javascript this全攻略

    Javascript this 在JavaScript中, this 是当前执行函数的上下文。 JavaScri...

  • 2020年前端面试复习必读文章

    1. JavaScript 基础 1.1 执行上下文/作用域链/闭包 理解 JavaScript 中的执行上下文和...

  • 通过作用域理解闭包

    javascript执行上下文和调用栈 javascript在执行过程中通常在以下环境 global code: ...

  • 执行上下文

    深入理解JavaScript执行上下文、函数堆栈、提升的概念 解密 JavaScript 执行上下文

  • javascript 作用域链

    我在文章《javascript 执行上下文》中介绍了 javascript 代码在执行时,会相应地创建对应执行上下...

  • javascript 执行上下文系列总结

    我在文章《javascript 执行上下文》中介绍了 javascript 代码在执行时,会相应地创建对应执行上下...

  • javascript this 指向

    我在文章《javascript 执行上下文》中介绍了 javascript 代码在执行时,会相应地创建对应执行上下...

  • javascript 变量对象

    我在文章《javascript 执行上下文》中介绍了 javascript 代码在执行时,会相应地创建对应执行上下...

  • 精品技术贴汇总

    about 执行上下文 深入理解JavaScript执行上下文、函数堆栈、提升的概念 JavaScript深入之变...

网友评论

      本文标题:JavaScript 面试系列:JavaScript 中执行上下

      本文链接:https://www.haomeiwen.com/subject/zenezrtx.html