スキップしてメイン コンテンツに移動

jQuery.extend()で、オブジェクトをマージしてみる。

今まで、知らなかったけど、これを機に使い方をまとめてみた。

■文法
$.extend( [deep], target, object1 [, objectN] )

[deep] trueを指定すると、再帰的に階層の深いプロパティもマージします。
target プロパティをマージする基底となるオブジェクトを指定します。
[object1] マージするためのプロパティを持つオブジェクトを指定します。
[objectN] マージするためのプロパティを持つオブジェクトを指定します。

実例1)
var p1 = {
id: 1,
name: 'TARO'
};

var p2 = {
name: 'JIRO',
age: '18'
}

$extend(a, b);

結果:
{
id:1,
name: 'JIRO',
age: '18'
}

$.extend(p1, p1) とすることで、p1 に p2 をマージします。
同じプロパティがあれば b の値で上書きされますし、新しいプロパティがあれば追加してくれます。


実例2)
また、extend() にはいくつでもオブジェクトを指定可能です。
var p1 = {
id: 1,
name: 'TARO'
};

var p2 = {
name: 'JIRO',
age: '18'
}

var p3 = {
name: 'SANRO',
sex: 'man'
}

$extend(p1, p2, p3);

結果:
{
id:1,
name: 'SANRO',
age: '18',
sex: 'man'
}

結構、便利な関数だね。
今後、もっと使ってみよ。

コメント

このブログの人気の投稿

XMPPとは

XMPPとは、インスタントメッセージソフトなどに使われるXMLベースのオープンソース・プロトコルである。2004年に、IETF(Internet Engineering Task Force)でIMPP(Instant Messaging and Presence Protocol)の標準案に選ばれた。 Jabber社が開発したインスタントメッセージソフト「Jabber」のプロトコルを、セキュリティ機能などを追加して改良したものである。具体的な機能としては、インスタントメッセージソフトで必要不可欠となるメッセージの送受信や、プレゼンス状態の通知などを受け持っている。 XMPPは柔軟性や拡張性が高いのが特徴であり、JabberやGoogle Talkなどのインスタントメッセージソフトで採用されている。 XMPPを使っているサービスの例はCERN、アメリカの軍事衛星、BBC News、MLB、DuckDuckGoなどがある。また、SlackやHipchatなどのXMPP連携を行うコミュニケーションサービスも数多くある。 時間があれば、ぜひ使ってみたいと思います。