const
是 JavaScript 中的一个关键字,用于声明一个只读的常量。这意味着一旦声明并赋值后,常量的值就不能再被改变。使用 const
声明的变量必须在声明时进行初始化。
const
声明的变量是不可变的,即其值不能被重新赋值。const
声明的变量具有块级作用域,这意味着它们只在声明它们的代码块内有效。let
不同,使用 const
声明的变量必须在声明时进行初始化。const
可以用来声明各种类型的变量,包括基本类型(如字符串、数字、布尔值)和引用类型(如对象、数组、函数)。
const
是合适的。const
变量的引用,但可以改变对象内部的属性值。const
声明函数参数可以防止函数内部意外地修改参数值。// 基本类型
const PI = 3.14159;
// PI = 3.14; // 这将导致 TypeError
// 引用类型
const person = { name: 'Alice', age: 25 };
// person = { name: 'Bob', age: 30 }; // 这将导致 TypeError
person.age = 26; // 这是允许的,因为对象的属性可以改变
// 函数参数
function greet(const person) {
console.log(`Hello, ${person.name}!`);
}
greet(person);
const
关键字保证了变量的引用是不可变的。对于基本类型,这意味着值本身不能改变;对于引用类型,这意味着变量指向的内存地址不能改变。
如果你需要一个可以改变的值,应该使用 let
而不是 const
。如果你需要一个不可变的对象,可以使用 Object.freeze()
方法来冻结对象,这样对象的属性就不能被修改了。
const immutablePerson = Object.freeze({ name: 'Alice', age: 25 });
immutablePerson.age = 26; // 这不会改变对象的属性值
请注意,Object.freeze()
只会影响对象的第一层属性,更深层次的属性仍然可以被修改。
通过理解 const
的这些基础概念和应用场景,你可以更有效地在 JavaScript 中使用它来编写更安全、更可靠的代码。
领取专属 10元无门槛券
手把手带您无忧上云