zoukankan      html  css  js  c++  java
  • 执行上下文

    执行上下文概念

    执行上下文(Execution Context):函数执行的准备工作(也称执行上下文环境)

    运行JavaScript代码的时候,当代码执行进入一个环境时,就会为该环境创建一个执行上下文,它会在运行代码前做一些准备工作,如:确定作用域、创建局部变量对象等。

    JavaScript中执行环境

    1、全局环境

    2、函数环境

    3、eval函数环境

    与之对应的执行上下文类型有

    1、全局执行上下文

    2、函数执行上下文

    3、eval函数执行上下文

    JavaScript中管理多个执行上下文

    函数编程中,代码中会声明多个函数,对应的执行上下文也会产生多个。在JavaScript中,通过栈的存取方式来管理执行上下文,我们可以称其为执行栈,或函数调用栈(Call Stack)。

                            

    总结栈数据结构的特点:
    1.先进后出,后进先出
    2.出口在顶部,且仅只有一个

    首先来看一个示例:

    堆栈示意图如下:

    执行上下文的生命周期:

    1、创建阶段(进入执行上下文):函数被调用时,进入函数环境,为其创建一个执行上下文,此时进入创建阶段。

    2、执行阶段(代码执行):执行函数中代码时,此时执行上下文进入执行阶段。

    1、创建变量对象

    ·函数环境会初始化创建 Arguments 对象,形式参数(并赋值)

    ·普通函数声明(并赋值)

    ·局部变量声明,函数表达式声明(未赋值)

    2、初始化作用域链

    3、确定 this 指向(this由调用者确定)

    4、确定作用域

  • 相关阅读:
    蓝桥杯训练 | 枚举,模拟与排序 | 04
    linux全套 | Linux模板机器安装 | 18
    linux全套 | Shell编程 | 16
    MySQL主从复制延迟解决方案
    MySQL异地备份方案
    MYSQL必知必会-where语句
    MySQL常见面试题-概念题
    入门-MySQL查询语句的45道练习
    20145234黄斐《信息安全系统设计基础》第0周学习总结
    OpenGL代码学习(2)
  • 原文地址:https://www.cnblogs.com/x0815/p/11967843.html
Copyright © 2011-2022 走看看