📅  最后修改于: 2023-12-03 15:41:10.666000             🧑  作者: Mango
在Javascript中,类构造函数是一种创建类的语法,它可以更轻松地定义对象和方法。
类可以通过class
关键字来定义,在类中可以定义构造函数,这个构造函数会在对象创建时被调用,可以设置类的属性。下面是一个类的简单定义:
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
sayHello() {
console.log(`Hello, my name is ${this.name} and I am ${this.age} years old.`);
}
}
如上所示,我们定义了一个叫做Person
的类,这个类拥有一个构造函数和一个sayHello
方法。在构造函数中,我们给类添加了name
和age
两个属性。在sayHello
方法中,我们输出一段话,使用了属性name
和age
。
创建类的实例非常简单,只需要使用关键字new
和构造函数即可:
const person1 = new Person("张三", 20);
const person2 = new Person("李四", 25);
person1.sayHello(); // 输出:Hello, my name is 张三 and I am 20 years old.
person2.sayHello(); // 输出:Hello, my name is 李四 and I am 25 years old.
如上所示,我们创建了两个不同的Person
对象,并使用sayHello
方法输出了不同的信息。
类之间可以通过继承来复用代码和属性。在Javascript中,可以通过关键字extends
来继承一个类。
class Student extends Person {
constructor(name, age, major) {
super(name, age);
this.major = major;
}
sayHello() {
console.log(`Hello, my name is ${this.name} and I am ${this.age} years old. I am studying ${this.major}.`);
}
}
如上所示,我们定义了一个叫做Student
的子类,它继承了Person
类,并添加了一个major
属性。在子类的构造函数中,我们使用了super
关键字来调用父类的构造函数。在sayHello
方法中,我们重写了父类的方法,输出了个性化的信息。
使用继承后,我们可以创建一个Student
对象并使用sayHello
方法:
const student1 = new Student("王五", 22, "计算机科学");
student1.sayHello(); // 输出:Hello, my name is 王五 and I am 22 years old. I am studying 计算机科学.
如上所示,我们创建了一个Student
对象,并使用sayHello
方法输出了个性化的信息。
类构造函数语法在Javascript中是一种十分常见的方式,它可以更轻松地定义对象和方法,并且通过继承可以实现代码和属性的复用。了解类构造函数语法可以让我们更加轻松地编写Javascript代码。