ES6 let和const

2019-09-26  本文已影响0人  kzc爱吃梨

1. a=1

a = 1 //含义不明 -不要用

2. var a

function fn (){
  if(true){
    console.log(a)
  }else{
    var a
    console.log(2)
  }
}
fn()

else后面的语句没有执行,但是console.log(a)却没有报错,原因是var a提前了(即使那里代码没有执行),相当于

function fn (){
  var a
  if(true){
    console.log(a)
  }else{
    console.log(2)
  }
}
fn()

因此var声明的变量写在第一行。


3. let 和 const

{
  let a=1
  {
    console.log(a)
    let a=2
    {
      let a=3
    }
  }
}
结果报错。
if(true){
  let a=1
  console.log(1)
}else{
  console.log(2)
}

console.log(a) //报错

const

const

总结

image.png

不要再用var了。。。

上一篇下一篇

猜你喜欢

热点阅读