zoukankan      html  css  js  c++  java
  • JS的预编译过程

    预编译发生在函数执行的前一刻

    预编译(全局)

    三部曲:

    ①、生成GO对象 (Global Object)     //  GO  ===  window

    GO{

    }

    ②、找形参和变量声明,将变量和形参名作为GO属性名,值为undefined

    ③、在函数体里面找函数声明,值——赋予函数体


    预编译(局部)

    四部曲:

    ①、生成AO对象 (Activation Object  执行期上下文)“作用域”   

    AO{

    }

    ②、找形参和变量声明,将变量和形参名作为AO属性名,值为undefined

    ③、将实参值和形参统一

    ④、在函数体里面找函数声明,值——赋予函数体


    一、imply global  暗示全局变量:即任何变量,如果变量未经声明就赋值,此变量就为全局对象所有。 

    二、一切声明的全局变量,都归window所有

    三、window就是全局

    四、①函数声明整体提升到逻辑最前面

      ②变量声明提升到逻辑最前面


    JS三部曲

    1、依法分析

    2、预编译

    3、解释执行

  • 相关阅读:
    关于MYSQL 和INNODB的逻辑关系图。最好的理解是一点点动手做,观察,记录,思考。
    MYSQL的DOUBLE WRITE双写
    MYSQL 中binlog 参数的记录
    How to install pip
    gdb
    vim的基本使用
    012_fieldset.html
    010_header.html
    011_label.html
    008_img.html
  • 原文地址:https://www.cnblogs.com/zzq-229/p/9674763.html
Copyright © 2011-2022 走看看