1. const声明一个只读的常量。一旦声明,常量的值就不能改变:
const name = "zs";
name = "ls";
报错:TypeError: Assignment to constant variable.
上面代码表明改变常量的值会报错。
2. const声明的变量不得改变值,这意味着,const一旦声明变量,就必须立即初始化,不能留到以后赋值。如下代码:
const name;
name = "zs";
报错:SyntaxError: Missing initializer in const declaration。
3. const声明一个常量的本质:并不是变量的值,不能改动,而是变量指向的那个内存地址所保存的数据不能改动。比如声明一个对象常量,可以给这个对象新增属性和值,但是不能指向另外一个对象:
const obj = {};
obj.name = 'zs';
console.log(obj); // { name: 'zs' }
const obj = {};
obj.name = 'zs';
obj = {};
/** obj = {};
^
TypeError: Assignment to constant variable. */