JavaScript-深入理解JavaScript(一、预编译和执行过程)
一、预解析
javascript 在执行前会进行类似“预解析”的操作:首先会创建一个在当前执行环境下的活动对象, 并将那些用 var 声明的变量、定义的函数设置为活动对象的属性, 但是此时这些变量的赋值都是 undefined
二、解释执行
在javascript解释执行阶段, 遇到变量需要解析时, 会首先从当前执行环境的活动对象中查找, 如果没有找到, 而且该执行环境的拥有者有 prototype 属性时则会从 prototype 链中查找, 否则将会按照作用域链查找, 遇到var a = …这样的语句时会给相应的变量进行赋值(注意:变量的赋值是在解释执行阶段完成的, 如果在这之前使用变量, 它的值会是undefined)
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。