React ES6 类和方法
Classes 类
ES6 引入了 classes(类)。
类是函数的一种类型,但不是使用关键字 function 来启动它,而是使用关键字 class,属性在 constructor() 构造函数方法中赋值。
实例
一个简单的类构造:
class Car {constructor(name) {this.brand = name;}}
注意类名的大小写。我们已经用大写字符开始了名称 "Car" 。这是类的标准命名约定。
现在,可以使用 Car 类创建对象:
实例
基于 Car 类创建一个名为 "mycar" 的对象:
<!DOCTYPE html><html><body><script>class Car {constructor(name) {this.brand = name;}}const mycar = new Car("Ford");document.write(mycar.brand);</script></body></html>
注意:初始化对象时会自动调用构造函数。
类中的方法
您可以在类中添加自己的方法:
实例
创建一个名为 “present” 的方法:
<!DOCTYPE html><html><body><script>class Car {constructor(name) {this.brand = name;}present() {return 'I have a ' + this.brand;}}const mycar = new Car("Ford");document.write(mycar.present());</script></body></html>
正如您在上面的示例中所看到的,您可以通过引用对象的方法名(后跟括号)来调用该方法(参数将放在括号内)。
类继承
要创建类继承,请使用 extends 关键字。
使用类继承创建的类从另一个类继承所有方法:
实例
创建一个名为 "Model" 的类,该类将继承 "Car" 类的方法
<!DOCTYPE html><html><body><script>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");document.write(mycar.show());</script></body></html>
super() 方法引用父类。
通过在构造函数方法中调用 super() 方法,我们调用父级的构造函数方法并访问父级的属性和方法。
要了解有关 ES6 类的更多知识,请查看本站的 JavaScript 类 部分。