美文网首页
JS中的继承

JS中的继承

作者: David_Rao | 来源:发表于2020-01-10 14:57 被阅读0次
<script>
    function Person(name, pets) {
        this.name = 'David';
        this.pets = pets;
    }

    Person.prototype = {
        constructor: Person,  // 注意这种写法constructor指针的修复
        run: function () {
            console.log('跑');
        }
    };

    function Student(num, name, pets) {
        //借助构造函数继承
        Person.call(this, name, pets);
        this.num = num;
    }
    // 寄生式继承
    function Temp() {}
    Temp.prototype = Person.prototype;
    var temp  = new Temp();
    Student.prototype = temp;
    temp.constructor = Student;

    // 注意:子类的原型方法要在继承后再写
    Student.prototype.study = function () {
        console.log('学');
    };

    var person = new Person();
    var student = new Student();
    person.run();  // 跑
    student.run();  // 跑
    student.study();  // 学
    console.log(Person.prototype.constructor);  // 经过修复后正确指向Person,否则指向Object
</script>

相关文章

  • JS继承

    JS中的继承 许多OO语言都支持两种继承方式:接口继承和实现继承; 因为JS中没有类和接口的概念 , 所以JS不支...

  • JS中基于原型实现继承

    本文不会对于JS中的继承机制进行深入研究,只聊js中基于原型实现继承的方式,如果需要了解JS中的继承机制及其相关背...

  • 2019-03-25 继承

    js中通过原型来实现继承 组合继承:原型继承+借用构造函数继承

  • [读] JS中的call()和apply()方法

    JS中的call()和apply()方法 实现继承 多重继承

  • JS中的继承

    1. prototype实现继承 由于IE不支持Man.prototype.proto=Human.prototy...

  • js中的继承

    方式一、原型链继承 分析: 这种方式实现的本质是通过将子类的原型指向了父类的实例,子类的实例就可以通过proto访...

  • js中的继承

    要使一个子类继承父类,需要两步实现:第一:继承父类自身的属性和方法第二:继承父类原型上的方法 "父类自身"属性和方...

  • js 中的继承

    在了解了js 中的原型链之后 (https://www.jianshu.com/p/1e683a9771c3),我...

  • JS中的继承

    JS作为面向对象的弱类型语言,继承也是其非常强大的特性之一。那么如何在JS中实现继承呢?让我们拭目以待。当然Jav...

  • JS中的继承

    以下内容总结自《js高级程序设计 第三版》 在许多面向对象的语言中,都支持接口继承和实现继承。 接口继承:只继承方...

网友评论

      本文标题:JS中的继承

      本文链接:https://www.haomeiwen.com/subject/mhopactx.html