美文网首页
如何实现B继承A

如何实现B继承A

作者: 茂茂爱吃鱼 | 来源:发表于2018-03-29 09:11 被阅读0次

    法一:

    B.prototype = new A();
    B.prototype.constructor = B;
    

    相当于

    B: { prototype: { constructor: B }, __proto__: { __proto__: A.prototype: { __proto__: ... } } }
    

    法二:

    B.prototype = Object.create(A.prototype);
    

    Object.create(o)相当于内部创建一个新的函数,然后将这个函数的prototype置为o,然后返回由这个函数创建的实例
    那么整个过程相当于

    function F() {}
    F.prototype = A.prototype;
    B.prototype = new F();
    
    B: { prototype: { constructor: B }, __proto__: { __proto__: F.prototype[A.prototype] : { __proto__: ... } } } 
    

    相关文章

      网友评论

          本文标题:如何实现B继承A

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