MST

星途 面试题库

面试题:JavaScript 中使用class关键字定义类的典型场景及代码实现

请描述在JavaScript中使用class关键字定义类的至少两个典型应用场景,并给出对应的代码示例,示例需包含类的属性、方法以及实例化过程。
23.8万 热度难度
编程语言JavaScript

知识考点

AI 面试

面试题答案

一键面试
  1. 封装数据和行为:常用于将相关的数据和操作封装在一起,形成一个逻辑单元。例如,创建一个Person类来表示人的信息和行为。
class Person {
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }
    greet() {
        return `Hello, my name is ${this.name} and I'm ${this.age} years old.`;
    }
}
// 实例化
const person1 = new Person('John', 30);
console.log(person1.greet()); 
  1. 代码复用与继承:通过继承可以复用已有类的属性和方法,同时添加新的特性。比如,创建一个Student类继承自Person类。
class Person {
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }
    greet() {
        return `Hello, my name is ${this.name} and I'm ${this.age} years old.`;
    }
}
class Student extends Person {
    constructor(name, age, grade) {
        super(name, age);
        this.grade = grade;
    }
    study() {
        return `${this.name} is studying in grade ${this.grade}.`;
    }
}
// 实例化
const student1 = new Student('Jane', 15, 9);
console.log(student1.greet()); 
console.log(student1.study());