var和let关键字

---------------------------

把let声明在全局,全局都能访问

let a = 3
if (true) {
console.log(a)
}
console.log(a)
--------------------
变量b用let声明在块内,外部访问不到b,报错
let a = 3
if (true) {
  let b =5
  console.log(b)
}
console.log(b)
--------------------
变量b用var声明在块内,外部能访问
let a = 3
if (true) {
  var b =5
  console.log(b)
}
console.log(b)
---------------------
如果不用任何关键字修饰变量b,b会自动提升为全局变量,相当于var修饰
let a = 3
if (true) {
  b =5
  console.log(b)
}
console.log(b)
----------------------
思考1:
let a = 5
if (true) {
  let a = 3
  if (true) {
    let a = 6
    console.log(a)
  }
}
console.log(a)
思考2:
let a = 5
if (true) {
  let a = 3
  if (true) {
    console.log(a)
  }
}
console.log(a)
 
 

猜你喜欢

转载自www.cnblogs.com/xmle/p/11363936.html
今日推荐