首頁 >类库下载 >其它類別庫 >JavaScript 學習筆記: 擴充類型的功能

JavaScript 學習筆記: 擴充類型的功能

大家讲道理
大家讲道理原創
2016-11-07 16:22:281752瀏覽

JavaScript 是允許擴充基本類型的功能。例如,可以透過對Object.prototype增加方法,可以讓該方法對所有的物件都可用。 這樣的方式對函數,數組,字串,數字,正規表示式和布林值同樣適用。

例如,可以透過對Function.prototype 增加方法對所有的函數可用:

Function.prototype.method = function(name, func) {  this.prototype[name] = func;  return this;  
}

透過給Function.prototype 增加method方法,之後再增加方法直接呼叫mehod方法即可,而不必再寫prototype。例如,JavaScript沒有整形類型,我們可以透過為Number.prototype增加一個integer方法類別來實現。

Number.method("integer", function(){    return Math[this < 0 ? &#39;ceil&#39; : &#39;&#39;floor&#39;](this);
});
console.log((-10 / 3).integer());   //out put -3

透過增加基本類型方法,可以大大提高語言的表現力。因為JavaScript原型繼承的動態本質,新的方法立刻被賦予到所有的物件實例上,包含在方法被增加之前就創建好的物件。

由於基本類型的原型是公用結構的,因此在使用類別庫的時候一定要小心。一個保險的做法就是只在確定沒有該方法的時候才添加它,例如:

Function.prototype.method = function(name, func) {  if (!this.prototype(name)) {    this.prototype[name] = func;
  }  return this;
};
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

相關文章

看更多