Jquery の拡張メソッド extend は、プラグインを作成するときによく使用されるメソッドです。
dest は、統合される空間です。
src は JSON 式で表される JavaScript オブジェクトです。したがって、メソッド属性を追加できます...
プラグイン開発を実現するために、さまざまなアプリケーションを通じて独自のメソッドを jQuery 空間に統合できます
jQuery で定義 jQuery.extend = jQuery.fn.extend したがって、これら 2 つの関数式は同じです
1. Jquery の拡張メソッドのプロトタイプは次のとおりです:
extend(dest,src1,src2,src3...);
その意味は、src1、src2、src3... を dest にマージすることであり、戻り値はマージされた dest です。このメソッドはマージ後に dest の構造を変更していることがわかります。マージ結果を取得したいが、dest の構造を変更したくない場合は、次のように使用できます:
var newSrc=$.extend({},src1,src2,src3...)//つまり、dest パラメータとして「{}」を使用します。
このようにして、src1、src2、src3... をマージすることができ、マージ結果が newSrc に返されます。例:
次にマージ結果
2. dest パラメータを省略します。
上記の extend メソッド プロトタイプの dest パラメータは省略できます。省略した場合、メソッドは src パラメータを 1 つだけ持つことができ、dest パラメータは次のようになります。 src を extend メソッドを呼び出すオブジェクトにマージします (例:
1, $.extend(src)
) このメソッドは、src を jquery のグローバル オブジェクト (例:
は、hello メソッドを jquery インスタンス オブジェクトにマージすることです。
次に、一般的に使用される拡張機能の例をいくつか示します:
$.extend({net:{}});
これは、jquery グローバル オブジェクトのネット名前空間を拡張します。
3. Jquery の extend メソッドにもオーバーロードされたプロトタイプがあります:
extend(boolean,dest,src1,src2,src3...)
最初のパラメータのブール値は、ディープ コピーを実行するかどうかを表します。他のパラメータは前に紹介したものと同じです。例を見てみましょう。
つまり、src 内のネストされたサブオブジェクトもマージされます。最初のパラメーターのブール値が false の場合、次のようにマージの結果がどのようになるかを見てみましょう:
上記は、$.extend() がプロジェクトでよく使用される詳細の一部です。