JavaScript执行上下文分为三种:全局、函数和eval。全局上下文是默认最外层环境,代码运行时首先创建,处理全局变量与函数,浏览器中this指向window;函数执行上下文在函数调用时创建,每个函数调用都会生成独立上下文,管理其内部变量、参数和作用域,支持嵌套并通过调用栈管理;eval执行上下文在eval执行代码时创建,因安全与性能问题不推荐使用。引擎通过这些上下文确定变量访问和this值。

JavaScript 执行上下文主要分为三种类型,每种对应不同的代码执行场景。
全局执行上下文
这是默认的、最外层的执行上下文。当 JavaScript 代码开始运行时,无论是否有任何函数调用,都会首先进入全局执行上下文。
它负责处理不在任何函数内部的变量和函数,浏览器环境中 this 指向 window 对象。
函数执行上下文
每当一个函数被调用时,就会为该函数创建一个新的函数执行上下文。
每个函数都有自己的执行环境,变量、参数和作用域都在这个上下文中管理。
函数可以嵌套,因此执行上下文会以栈的形式管理,称为调用栈。
eval 执行上下文
当在 eval 函数中执行代码时,会创建一个 eval 执行上下文。
这种上下文比较少见,通常不推荐使用 eval,因为它可能带来安全和性能问题。
基本上就这些。代码执行时,JavaScript 引擎通过管理这些上下文来确定变量访问和 this 的值。










