1. const含义:
const是javascript内置的一个关键字,const用于声明一个或多个常量,可以声明只读的常量,声明时必须进行初始化,一旦声明,常量的值就不能改变。一个常量不能和它所在作用域内的其他变量或函数拥有相同的名称。
2.两个重要的 JavaScript 关键字: let 和 const
①let 声明的变量只在 let 命令所在的代码块内有效。
②const 用于声明一个或多个常量,声明时必须进行初始化,且初始化后值不可再修改:
const a=3.15;
a = 3.5;//报错
a = a + 10;//报错
3. const定义常量与使用let 定义的变量:
①相似:
-
二者都是块级作用域
-
都不能和它所在作用域内的其他变量或函数拥有相同的名称
②区别:
-
const声明的常量必须初始化,而let声明的变量不用
-
const 定义常量的值不能通过再赋值修改,也不能再次声明。而 let 定义的变量值可以修改。
let x = 10;//x输出为10
{
const x = 2;//x输出为2
}
//x输出为10
const 声明的常量必须初始化:
//错误写法:
const a;
a = 3;
//正确写法:
const a = 3;
4. const 的本质:
const 定义的变量并非常量,并非不可变,它定义了一个常量引用一个值。使用 const 定义的对象或者数组,其实是可变的。
①常量对象:
修改、添加:
//创建常量对象:
const a = {model:"500",color:"white"};
//修改属性:
a.color = "red";
//添加属性:
a.owner = "Mike";
不能对常量对象重新赋值:
const a = {model:"500",color:"white"};
a = {model:"600",color:"red"};//错误
②常量数组:
修改、添加:
//创建常量数组
const a = ["Mike","Mary"];
//修改元素
a[0] = "Milk";
//添加元素
a.push("water");
不能对常量数组重新赋值:
const a = ["Mike","Mary"];
a = ["Water","red"];//错误