JavaScript 之 预解析
Posted 秋捷prion
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript 之 预解析相关的知识,希望对你有一定的参考价值。
1.预解析
javascript代码是由浏览器中的Javascript解析器来执行的 JavaScript解析器在运行JavaScript代码的时候分为两步:预解析和代码执行
<script> //1 问 console.log(num);// //2 问 console.log(num);//undefined 坑1 var num = 10; // 预解析: // var num // console.log(num); // num = 10; //3问 fn(); function fn(){ console.log(11); } //4问 fun(); //报错 坑2 var fun = function(){ console.log(22); } // 1.js引擎运行js分为两步:预解析 代码执行 // (2).预解析 js引擎会把js里买的所有var还有function提升到当前作用域的最前面 // (3).代码执行 按照代码的循序从上往下执行 //2.预解析分为变量预解析 (变量提升) 和 函数预解析 (函数提升) // (1)变量提升 激素hi把所有的变量声明提升到当前作用域的最前面 不提升赋值操作 // (2)函数提升 所有函数声明提升到作用域最前面 不调用 </script>
预解析实例:
<script> f1(); console.log(c); console.log(b); console.log(a); function f1(){ var a = b = c = 9; console.log(a); console.log(b); console.log(c); } function f1(){ var a = b = c = 9; var a; a = b = c = 9 ; console.log(a); console.log(b); console.log(c); } </script>
以上是关于JavaScript 之 预解析的主要内容,如果未能解决你的问题,请参考以下文章