【es6】let和const

let

1.不存在变量提升
     es5中var和function都存在变量提升,但let声明的变量不存在。
    在代码块内,使用let命令声明变量之前,该变量都是不可用的。这在语法上,称为“暂时性死区”(temporal dead zone,简称TDZ)。
2.不允许重复声明
3.用法
     适合放在for循环中;代替闭包
 
const
     声明常量,后面改变值或重新赋值不起作用;声明对象时,保存的是指向对象的指针,所以可以改变对象本身属性或方法,但不能改变指针本身的值,也就是重新赋值会出错。
原文地址:https://www.cnblogs.com/shytong/p/4959660.html