在ES6中,let 用来定义变量,const 用来定义常量
事实上var可以看成是js语言设计上的错误,但是不能移除,因为需要向后兼容
于是提出了一个新的关键字let,可以将let看成更完美的var
块级作用域
比如:这个a在大括号外面还是可以用的
{
var a = 1;
}
但是这个a在大括号外面是不起作用的
{
let a = 1;
}
另外还有类似情况:
ES5之前因为if和for等都没有块级作用域的概念,所以在很多时候,我们都必须借助function的作用域来解决应用外部变量的问题
而ES6中加入了 let ,具有了if和for等的块级作用域
const修饰的标识符不会被再被赋值,可以用const保证数据的安全性,
在开发中,优先使用const
const如果指向对象的话,指的是对象不能修改,但是对象内部的属性值可以修改
原文:https://www.cnblogs.com/wbyixx/p/11933036.html