Web开发

首页 » 常识 » 常识 » web前端培训使用const关键字定义
TUhjnbcbe - 2022/12/9 23:34:00

JavaScriptconst关键字简介

ES6提供了一种使用const关键字声明常量的新方法。const关键字创建对值的只读引用。

constCONSTANT_NAME=value;

按照惯例,常量标识符是大写的。

与let关键字一样,const关键字声明块作用域变量。但是,由const关键字声明的块范围变量不能重新分配。

let关键字声明的变量是可变的。这意味着我们可以随时更改它们的值,如以下示例所示:

leta=10;

a=20;

a=a+5;

console.log(a);//25

但是,由const关键字创建的变量是“不可变的”。换句话说,我们不能将它们重新分配给不同的值。

如果我们尝试重新分配由const关键字声明的变量,我们将收到如下所示的TypeError:

constRATE=0.1;

RATE=0.2;//TypeError

与let关键字不同,我们需要将值初始化为const关键字声明的变量。

以下示例由于缺少const变量声明中的初始化程序而导致SyntaxError:

constRED;//SyntaxError

JavaScript常量和对象

const关键字确保它创建的变量是只读的。但是,这并不意味着const变量引用的实际值是不可变的。例如:

constperson={age:20};

person.age=30;//OK

console.log(person.age);//30

即使person变量是一个常量,我们也可以更改其属性的值。

但是,我们不能像这样为person常量重新分配不同的值:

person={age:40};//TypeError

如果我们希望person对象的值是不可变的,则必须使用Object.freeze()方法将其冻结:

constperson=Object.freeze({age:20});

person.age=30;//TypeError

注意Object.freeze()是浅的,这意味着它可以冻结对象的属性,而不是属性引用的对象。

例如,

1
查看完整版本: web前端培训使用const关键字定义