关于js的变量提升和函数解析
在js中函数有上到下执行,变量提升即使var a 会在函数赋值前,先一步声明变量 ,也就是说 console.log(a) 会输出 undefined
<script>
console.log(a)
var a = 8
<script>
函数提升写下函数的时候 fun();写在function fun(){}前面的时候,也是不会报错的js代码解析会先将function fun(){} ,函数提升,所以是不会报错的
<script> fn() function fn(){ console.log("aa") // 函数不报错 } </script>
var fun赋值的function function(){}是不会提前函数提升的
<script> fun(); // 报错
var fun = function() { console.log(22); } // 相当于执行 var fun // fun(); // fun = function(){ // console.log(22); // } </script>
总结:函数提升与变量提升这方面的知识主要已理解为主,应对面试必备。