JavaScript中的执行上下文
概念
当函数执行时,会创建一个执行上下文的内部空间(可以理解为作用域)。 Javascript 代码都是在执行上下文中运行。
执行上下文的类型
- 全局执行上下文 - 默认的上下文,任何不在函数内部的代码都在全局上下文中。它会创建一个全局的
window
对象,设置this
的值等于这个全局对象。一个程序中自只会
有一个全局执行上下文。 - 函数执行上下文 - 当函数被调用时,就会为该函数创建一个新的上下文。
- Eval函数执行上下文 - 执行在 eval 函数内部的代码也会有它属于自己的执行上下文。
上下文的执行流程
- This绑定
- 创建作用域链
- 创建变量对象(函数的形参,函数声明,变量声明)
- 代码执行
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!