1、const 定义的变量,是不能够重新赋值的,而且必须初始化。所以这个是使用优先级最高的个语法,他能极大保障数据的安全性。
const num = 3; console.log(num); //现在尝试修改i的值 num = 5; console.log(num); //这时会报错


但也不是说const所定义的变量就不能修改值
const arr = [name='tome', age=19]; //输出数组的值 console.log(arr); //修改年龄 arr.age=20; console.log(arr);

从这我们可以看出,如果用const定义对象,对象中的属性值是可以更改的。
2、let 跟 const 是一样的,只不过它可以重新被赋值。
let num = 10; //输出值为 10 console.log(num); //输出值为 20 num = 20; console.log(num);

3、let 跟 const 是块级作用域,但是 var 是函数级作用域
{
var x = 333;
let y = 444;
}
console.log(x); // 333
console.log(y); // 报错
function aaa () {
console.log("pre", x); // undefined
if (true) {
var x = 323;
}
console.log("post", x); // 323,记住,var 定义的变量是函数级别的作用域的
}

