React ES6 类

ES6 引入了类。

类是一种函数,但不是使用关键字 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 类部分。