ホームページ >类库下载 >その他の図書館 >JavaScript学習メモ:拡張型関数

JavaScript学習メモ:拡張型関数

大家讲道理
大家讲道理オリジナル
2016-11-07 16:22:281711ブラウズ

JavaScript を使用すると、機能を基本型に拡張できます。たとえば、メソッドを Object.prototype に追加すると、そのメソッドをすべてのオブジェクトで使用できるようになります。 このアプローチは、関数、配列、文​​字列、数値、正規表現、およびブール値に対しても同様に機能します。

たとえば、Function.prototype にメソッドを追加して、すべての関数で使用できるようにすることができます:

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

Function.prototype にメソッド メソッドを追加してからメソッドを追加すると、メソッドを追加しなくても、メソッド メソッドを直接呼び出すことができます。プロトタイプを書くために。たとえば、JavaScript には整数型がありません。整数メソッド クラスを Number.prototype に追加することでこれを実装できます。

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 までご連絡ください。

関連記事

続きを見る