在es6中更新了两个变量命名方法分别为
let const
简洁来说:
let:对比var不能重复定义,有作用域{自带闭包问题}
常常体现在if判断和for循环当中
const:不能重复定义,会被直接定义为常量
例
function fun(){
var a=1
var a=2
}
fun()
alert(a)//这里会弹出2
为什么我们在函数内定义的变量在函数外面依然可以访问呢?
就是因为上面说的,没有作用域问题,并且可以重复定义
同样的问题let没有任何错误在日常99%的情况let是可以代替var的
function fun(){
let a=1
let a=2
}
fun()
alert(a)
//这里会直接报错,就算删掉第二次定义也会弹出‘未定义’,这是因为let自带的作用域问题,在函数内定义的问题就只能在函数内使用
至于const常量怎么用他就怎么用,一般是用不到的
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。