猿问

这样写js继承跟 js寄生组合式继承相比会有什么问题吗?

    function Sup(){

        this.name = 'adc';

        this.arr = [1,2,3];

    }


    Sup.prototype.say = function(){

        console.log(this.arr)

    }


    function Sub(){

        Sup.call(this)

    }


    Sub.prototype = Sup.prototype


    var c1 = new Sub()

    var c2 = new Sub()


守候你守候我
浏览 493回答 2
2回答

喵喔喔

引用问题直接赋值Sub.prototype和Sup.prototype指向同一个内存地址所有两者会相互影响 在Sub中定义的原型方法Sup也会有一般这样:Sub.prototype = Object.create(Sup.prototype)
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答