<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ~~~javascript 1.function Fn() { 2. this.x = 100; 3. this.y = 200; 4. this.getX = function () { 5. console.log(this.x); 6. } 7.} 8.Fn.prototype.getX = function () { 9. console.log(this.x); 10.}; 11.Fn.prototype.getY = function () { 12. console.log(this.y); 13.}; 14.var f1 = new Fn; 15.var f2 = new Fn; 16.console.log(f1.getX === f2.getX); 17.console.log(f1.getY === f2.getY); 18.console.log(f1.__proto__.getY === Fn.prototype.getY); 19.console.log(f1.__proto__.getX === f2.getX); 20.console.log(f1.getX === Fn.prototype.getX); 21.console.log(f1.constructor); 22.console.log(Fn.prototype.__proto__.constructor); 23.f1.getX(); 24.f1.__proto__.getX(); 25.f2.getY(); 26.Fn.prototype.getY(); ~~~ ~~~ /* * 1 和 new Number(1) * 區別: * 前面是一個基本數據類型值 * 后面是一個引用數據類型值(對象) * 相同點: * 都是Number這個類的一個實例 */ /* * 函數類型: * 1.普通函數 * 2.構造函數(類:內置類和自己創建的類) * 對象類型: * 1.普通對象 * 2.Math \ JSON ... * 3.類的實例(數組、正則、日期...) * 4.prototype 或者 __proto__ * 5.arguments或者元素集合等類數組 * 6.函數也是一種對象 * 7.... * =>萬物皆對象 */ /* * 1.每一個函數(類)都有一個prototype(原型)屬性,屬性值是一個對象:這個對象中存儲了當前類供實例調取使用的公有屬性和方法 * 2.在“瀏覽器默認”給原型開辟的堆內存中有一個屬性constructor:存儲的是當前類本身 * 3.每一個對象(實例)都有一個__proto__(原型鏈)屬性,這個屬性指向當前實例所屬類的原型(不確定所屬的類,都指向Object.prototype) */ function Fn() { this.x = 100; this.y = 200; this.getX = function () { console.log(this.x); } } Fn.prototype.getX = function () { console.log(this.x); }; Fn.prototype.getY = function () { console.log(this.y); }; var f1 = new Fn; var f2 = new Fn; console.log(f1.getX === f2.getX);//=>false console.log(f1.getY === f2.getY);//=>true console.log(f1.__proto__.getY === Fn.prototype.getY);//=>true console.log(f1.__proto__.getX === f2.getX);//=>false console.log(f1.getX === Fn.prototype.getX);//=>false console.log(f1.constructor);//=>Fn console.log(Fn.prototype.__proto__.constructor);//=>Object f1.getX();//=>this:f1 =>console.log(f1.x); =>100 f1.__proto__.getX();//=>this:f1.__proto__ =>console.log(f1.__proto__.x); =>undefined f2.getY();//=>this:f2 =>console.log(f2.y); =>200 Fn.prototype.getY();//=>this:Fn.prototype =>console.log(Fn.prototype.y); =>undefined ~~~ ![](https://img.kancloud.cn/c8/bf/c8bfd7447d3de516c3c5685459c7a31f_3328x1046.png)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看