美文网首页
javaScript 代码解释执行过程

javaScript 代码解释执行过程

作者: LingSun | 来源:发表于2019-12-18 13:46 被阅读0次

javaScript 是由浏览器解释执行的脚本语言,不需要先编译后执行,而是通过浏览器 js 解释器进行解释执行
执行过程分为两步:预编译期和执行期(以代码块为单位,边解释边执行)

预编译期 js解释器会对本代码段内所有的 声明的变量和方法进行处理,将变量和方法提到对应的作用域的最前面,该过程只是对变量进行声明,并不会进行初始化或者赋值(缺省值默认为undefined)

JavaScript 中局部变量只可能通过两种方式声明,一个是作为函数参数,另一个是通过 var 关键字声明。 var 表达式和 function 声明都将会被提升到当前作用域的顶部

编译前
foo();  //alert(1)
function foo(){  //声明式函数
  alert(1);
}
foo2();  //undefined is not a function 
var foo2 = function(){  //赋值式函数声明,其实是函数表达式
  alert("foo2");
};
编译后
var foo2;  //缺省值是'undefined'
function foo(){
 alert(1);
}
foo();
foo2();  //undefined is not a function 
foo2 = function(){
  alert('foo2');
};

相关文章

网友评论

      本文标题:javaScript 代码解释执行过程

      本文链接:https://www.haomeiwen.com/subject/ynnynctx.html