返回
ES2022 新增 ECMAScript Class 特性大盘点
前端
2023-11-08 03:07:03
ES2022 为 ECMAScript Class 新增了下表中所的特性:
特性 | |
---|---|
字段 | 字段是类的实例属性。它们可以使用 public、private 或 protected 修饰。 |
静态字段 | 静态字段是类的静态属性。它们可以使用 static 关键字修饰。 |
公共字段 | 公共字段是类的公共属性。它们可以使用 public 关键字修饰。 |
私有字段 | 私有字段是类的私有属性。它们可以使用 private 关键字修饰。 |
受保护字段 | 受保护字段是类的受保护属性。它们可以使用 protected 关键字修饰。 |
构造函数 | 构造函数是类的构造函数。它用于初始化类的实例。 |
方法 | 方法是类的实例方法。它们可以使用 public、private 或 protected 关键字修饰。 |
getter | getter 是类的实例 getter。它用于获取类的实例属性的值。 |
setter | setter 是类的实例 setter。它用于设置类的实例属性的值。 |
这些新特性可以帮助我们编写更简洁、更易读和更易维护的 JavaScript 代码。例如,我们可以使用字段来声明类的属性,而无需使用 constructor() 方法。我们也可以使用静态字段来声明类的静态属性,而无需使用类名.property() 方法。
class Person {
#name;
constructor(name) {
this.#name = name;
}
get name() {
return this.#name;
}
set name(name) {
this.#name = name;
}
}
const person = new Person('John Doe');
console.log(person.name); // 'John Doe'
person.name = 'Jane Doe';
console.log(person.name); // 'Jane Doe'
在上面的示例中,我们使用 #name 声明了一个私有字段。我们还使用 getter 和 setter 来访问和设置私有字段的值。这使得我们的代码更简洁和更易读。
ES2022 为 ECMAScript Class 带来的新特性非常强大。它们可以帮助我们编写更简洁、更易读和更易维护的 JavaScript 代码。