js三種引継ぎ


皆さん、こんにちは、js継承はjsの中で重要な部分です.この文章はjsの中の継承を紹介します.
常用の3つの継承
  • 構造関数継承
  • call&appy継承
  • prototype継承
  • js継承にはバリエーションが多く、この3つのタイプがよく使われています.
    継承する前に、newの実例化の過程の中で、メモリの中の3つの段階を言います.
    new実装、メモリ中の3段階
    //    
    function Foo(){}
    var _f = new Foo();
    //        
    // 1)    
        var _f = {};
    // 2)   __proto__  
        _f.__proto__ = Foo.prototype;
    // 3)  this  
        Foo.call(_f);
    これはメモリに実装されている3つの段階であり、第1ステップのオブジェクト作成に加えて、オブジェクトの実装は、本質的にはまだ動作prototypeおよびthisであることが分かる.
    メモリの三つの段階を理解すれば、引き継ぎがよく分かります.
    実質的には、動作prototypeおよびthisも継承されている.
    js継承の簡単なまとめ
    function Axx( ){ this.a = 1; }
    Axx.prototype.foo = function (){ };
    
    //   1、     ( prototype     ,      )
       Bxx.prototype = new Axx();
    
    //    2、       -                            
        function Children() {
           this.obj = ParentFn; //      ParentFn       (       ,             )
            this.obj(); //      ParentFn this   
       }
    
    
    //   3、call apply  
       function Bxx(){
           Axx.call(this);
        }
    
       new Bxx(); //       
    上は簡単に継承できます.簡単ですか?
    プロトタイプチェーンは前の文章で述べましたが、ここでは詳しく説明しません.プロトタイプのチェーンはこれを見ます
    更にまとめて、js継承の核心、
    つまり、thisの指す変化は、子類のthisを広げ、親類のthisを含ませたものです.
    引き継ぎのまとめ
    2つの点については、prototypeのプロトタイプ上の共有方法とthis上のプライベート方法を継承することが分かりました.
    基本的な理論も言いました.その後、いくつかのprototypeと継承の実用的な応用を見ました.継承の簡単な原理はここまでです.