在es6中更新了两个变量命名办法别离为
let const
简洁来说:
let:比照var不能反复定义,有作用域{自带闭包问题}
经常体现在if判断和for循环当中
const:不能反复定义,会被间接定义为常量
例
function fun(){var a=1var a=2}fun()alert(a)//这里会弹出2
为什么咱们在函数内定义的变量在函数里面仍然能够拜访呢?
就是因为下面说的,没有作用域问题,并且能够反复定义
同样的问题let没有任何谬误在日常99%的状况let是能够代替var的
function fun(){let a=1let a=2}fun()alert(a)//这里会间接报错,就算删掉第二次定义也会弹出‘未定义’,这是因为let自带的作用域问题,在函数内定义的问题就只能在函数内应用
至于const常量怎么用他就怎么用,个别是用不到的