本文介绍: 使用const定义变量使用let定义变量拥有相同作用域不同在于使用const定义变量后续不能对他进行重新赋值const a = 1;a = 2;//error TS2588: Cannot assign toabecause it is a constant.但如果使用const定义的是object数组类型变量变量本身不能被重新赋值,但变量代表对象数组还是可以修改的:const a = { data : 1};a.data = 2;console

使用const定义的变量与使用let定义的变量拥有相同作用域不同在于使用const定义的变量后续不能对他进行重新赋值

const a = 1;
a = 2;//error TS2588: Cannot assign to 'a' because it is a constant.

但如果使用const定义的是object数组类型的变量,变量本身不能被重新赋值,但变量所代表对象或数组还是可以修改的:

const a = {
	data : 1
};
a.data = 2;
console.log(a);//输出{ data: 2 }

a = {data : 1};//error TS2588: Cannot assign to 'a' because it is a constant.

const b = [1,2];
b.push(3);
console.log(b);//输出[ 1, 2, 3 ]
b = [4,5,6];//error TS2588: Cannot assign to 'b' because it is a constant.

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注