关于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>

 

总结:函数提升与变量提升这方面的知识主要已理解为主,应对面试必备。

posted @ 2022-06-11 17:45  一杯咖啡钱  阅读(18)  评论(0编辑  收藏  举报