本文共 662 字,大约阅读时间需要 2 分钟。
执行上下文是当前 JavaScript 代码被解析和执行时所在的环境抽象概念。无论是全局代码、函数代码还是 Eval 函数执行代码,都需要一个执行上下文来运行。
全局执行上下文是 JavaScript 执行的顶级上下文。所有在浏览器窗口中直接执行的代码都运行在全局上下文中。例如:
console.log('全局执行上下文');var a = 10; 当调用函数时,函数内部的执行会形成一个新的执行上下文。这个上下文会包含函数的内部变量和状态,这些变量和状态在函数执行完成后会被销毁。
Eval 函数的执行上下文与全局上下文有所不同。Eval 会在当前上下文中执行代码,需要谨慎使用,因为它可能带来安全隐患。
执行栈是 JavaScript 用于管理函数调用和执行上下文的数据结构。每当进入一个函数调用,执行栈会被压入一个新的上下文框架,函数执行完成后,上下文会被弹出执行栈。
执行上下文的创建分为两阶段:
通过对执行上下文和执行栈的理解,我们能够更好地掌握 JavaScript 的提升机制、作用域和闭包。接下来,我们将深入探讨 JavaScript 的执行顺序和内存管理机制。
转载地址:http://qqhfk.baihongyu.com/