DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> js中使用使用原型(prototype)定義方法的好處詳解
js中使用使用原型(prototype)定義方法的好處詳解
編輯:關於JavaScript     

經常在前端面試或是和其他同行溝通是,在談到構造在JS定義構造函數的方法是最好使用原型的方式:將方法定義到構造方法的prototype上,這樣的好處是,通過該構造函數生成的實例所擁有的方法都是指向一個函數的索引,這樣可以節省內存。

當然,這種說法沒有任何問題,只是在實現上,並非只有使用prototype的方式才能達到這樣的效果,我們可以將方法以函數的形式定義在構造函數之外,然後在構造函數中通過this.method = method的方式,這樣生成的實例的方法也都通過索引指向一個函數,具體如下:

// 不使用原型定義方法:
(function() {
  function Constractor() {
    this.method1 = method1;
    this.method2 = method2;
  }

  function method1() {
  }

  function method2() {
  }
})();

一般使用原型定義時代碼如下:

(function () {
  function Constractor() {
  }

  Constactor.prototype = {
    method1: function() {
    },
    method2: function() {
    }
  };
  
  // 或者
  Constactor.prototype.method1 = function() {
  };
  Constactor.prototype.method2 = function() {
  };

})();

理論和實現都沒有什麼高深的,只是為了達到同樣的目的,可以通過不同的途徑,只是此種方式在使用instanceOf運算符來判斷繼承關系時就不奏效了。

以上這篇js中使用使用原型(prototype)定義方法的好處詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved