js的继承

本文介绍了JavaScript中实现继承的三种常见方法:原型继承,通过将一个构造函数的实例赋值给另一个构造函数的原型;构造函数继承,将实例对象的公共成员挂载到原型;以及ES6的class继承,使用`extends`关键字进行类的继承。每种方法都通过示例展示了如何创建和访问继承的属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、原型继承:

        把一个构造函数的实例对象直接赋值给另外一个构造函数的原型,那么这个构造函数就继承了赋值的那个实例对象上的所有成员。

function Person() {
    this.name = '慢羊羊头上没草'
}
function Son() {}

Son.prototype = new Person()

const son = new Son()
console.log(son.age) //慢羊羊头上没草

2、构造函数继承:

        把实例对象上的公共成员挂载到原型对象上,那么实例对象就继承了原型的所有成员。

function Person() {

}
Person.prototype.name = "慢羊羊头上没草"

console.log(new Person().name)

3、class继承

        让一个class类extends继承另外一个类,那么此类就继承了那个类的所有成员

    //定义一个老师类
    class Teacher {
        constructor(name, subject) {
            this.name = name;
            this.subject = subject;
        }
    }
    //定义一个学生类
    class Student {
        constructor(name, score) {
            this.name = name;
            this.score = score;
        }
    }
    const student = new Student('张三', 100);
    const teacher = new Teacher('老师', 'js')
    console.log(student.name);
    console.log(teacher);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值