React ES6 类
Classes
ES6 引入了类(classes)。
类(class)是一种函数,但它不使用 `function` 关键字来声明,而是使用 `class` 关键字,并且属性在 `constructor()` 方法中分配。
示例
一个简单的类构造函数
class Car {
constructor(name) {
this.brand = name;
}
}
请注意类名称的大小写。我们以大写字母“Car”开头。这是类的标准命名约定。
现在您可以使用 Car 类创建对象
示例
基于 Car 类创建一个名为“mycar”的对象
class Car {
constructor(name) {
this.brand = name;
}
}
const mycar = new Car("Ford");
注意:构造函数在初始化对象时会自动调用。
类中的方法
您可以在类中添加自己的方法
示例
创建一个名为“present”的方法
class Car {
constructor(name) {
this.brand = name;
}
present() {
return 'I have a ' + this.brand;
}
}
const mycar = new Car("Ford");
mycar.present();
如上例所示,您可以通过引用对象的 `方法名()` 来调用方法(参数将放在括号内)。
类继承
要创建类继承,请使用 extends
关键字。
通过类继承创建的类继承了另一个类的所有方法
示例
创建一个名为 "Model" 的类,它将继承 "Car" 类的方法
class Car {
constructor(name) {
this.brand = name;
}
present() {
return 'I have a ' + this.brand;
}
}
class Model extends Car {
constructor(name, mod) {
super(name);
this.model = mod;
}
show() {
return this.present() + ', it is a ' + this.model
}
}
const mycar = new Model("Ford", "Mustang");
mycar.show();
super()
方法指向父类。
通过在构造函数方法中调用 `super()` 方法,我们可以调用父类的构造函数方法,并访问父类的属性和方法。
要了解更多关于类的信息,请查看我们的 JavaScript 类 部分。