变量提升与函数提升

变量提升与函数提升

变量提升

  • 主要是var声明变量时候变量会被提升至函数顶部,并初始化值为undefined
  • 变量
 console.log(num) //undefined
 var num = 10
 console.log(num) //10
  • 声明函数
 console.log(num) //undefined
 var fn = function() {}
 console.log(num) //function(){}

函数提升

  • 是在定义函数的时候出现的一种现象
console.log(fn) //function fn(){}
function fn() {}
console.log(fn) //function fn(){}

函数提升和变量提升的优先级

  • 函数提升大于变量提升 具体看案例
console.log(a)  // function a() {}
var a = 10
console.log(a)  //10
function a() {}
console.log(a)  //10

你可能感兴趣的:(JavaScript,前端,html,javascript)