作用域问题

     作用域的问题

1.Js代码如何执行

2.js环境

3. 

Js代码在客户端执行前,浏览器会给这个js一个全局环境,这个环境分两个部分,

一个是内存模块,一个是执行模块,内存模块找到当前环境下的所有带varfunction的关键字,var进行变量声明,function 进行声明和定义。

执行模块逐行向下执行(会出现语句和代码块),如果是函数执行。

函数执行:会开辟一个类似于window的私有作用域,在这个私有作用域里又分两个模块,内存模块和执行模块。内存模块找出当前环境下的所有带varfunction的关键字,还需要注意函数的形参,因为他也是一个私有变量,带var的进行变量声明为私有变量

Function 声明和定义都完成了,然后是执行模块逐行执行。

阿里面试分析

图形分析

原文地址:https://www.cnblogs.com/yangzhiqiang/p/9878966.html