JavaScript的运行
代码解析
- 在JS引擎解析时,会形成一个Global Object(全局对象),里面内置了String,Math等类,window:this(指向Global Object),全局声明的变量在解析时也会放置在这里,但是默认值为undefined,因为解析时不执行代码(赋值、函数调用等)
代码执行
- JS引擎通过执行上下文栈(调用栈)调用代码
- Q:全局变量没有调用栈该如何执行调用?
A:需要创建全局执行上下文(全局代码需要被执行时才会创建)(GEC)
函数则是通过函数执行上下文进行调用(FEC) - 全局执行上下文结构:
VO(Varibale[变量] Object):GO (Global Object)[VO就是GO] 开始执行代码 通过VO在GO里寻找相应的变量和函数
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!