美文网首页
JS 预编译执行顺序

JS 预编译执行顺序

作者: 抽疯的稻草绳 | 来源:发表于2021-02-04 11:28 被阅读0次

全局预编译的步骤:

1.创建GO(Global Object,全局执行期上下文,在浏览器中为window)对象;
2.寻找var变量声明,并赋值为undefined;
3.寻找function函数声明,并赋值为函数体;
4.执行代码。

函数预编译的步骤:

1.创建AO对象,执行期上下文。
2.寻找函数的形参和变量声明,将变量和形参名作为AO对象的属性名,值设定为undefined.
3.将形参和实参相统一,即更改形参后的undefined为具体的形参值。
4.寻找函数中的函数声明,将函数名作为AO属性名,值为函数体。

相关文章

  • JS预解析(变量提升)

    JS预解析(变量提升) JS的正常执行顺序是从上往下依次执行,但是JS在执行之前会读取一遍JS代码 将所有变量声明...

  • JS 预编译执行顺序

    1.WeakMap的键名只支持对象,map的键名可以是任意值。 2. Map可以遍历,WeakMap不可以 3. ...

  • JS执行顺序-函数声明提升、匿名函数、函数表达式

    大方向上: JS 是按照 代码块 进行 编译、执行 的。 JS执行顺序:原文地址 一.