jQuery.extend()方法

2018-11-21 19:03 更新

jQuery.extend()方法

jQuery 雜項(xiàng)方法jQuery 雜項(xiàng)方法

實(shí)例

遍歷數(shù)組元素,并修改第一個(gè)對(duì)象

<div id="log"></div>
<
script>
$
(function () {
    var
object1 = {
        apple
: 0,
       
banana: {weight: 52, price: 100},
        cherry
: 97
    }
;
   
var object2 = {
        banana
: {price: 200},
        durian
: 100
   
};
    /*
object2 合并到 object1 中 */
    $.
extend(object1, object2);
    var
printObj = typeof JSON != "undefined" ? JSON.stringify : function(obj) {
 
       var arr = [];
        $.
each(obj, function(key, val) {
            var
next = key + ": ";
            next
+= $.isPlainObject(val) ? printObj(val) : val;
            arr
.push( next );
        }
);
        return "{ " + arr.join(", ") + " }";
   
};
    $
("#log").append( printObj(object1) );})
</
script>

嘗試一下 ?

定義和用法

jQuery.extend() 函數(shù)用于將一個(gè)或多個(gè)對(duì)象的內(nèi)容合并到目標(biāo)對(duì)象。

注意:1. 如果只為$.extend()指定了一個(gè)參數(shù),則意味著參數(shù)target被省略。此時(shí),target就是jQuery對(duì)象本身。通過這種方式,我們可以為全局對(duì)象jQuery添加新的函數(shù)。
2. 如果多個(gè)對(duì)象具有相同的屬性,則后者會(huì)覆蓋前者的屬性值。


語法

$.extend( target [, object1 ] [, objectN ] )

指示是否深度合并


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

警告: 不支持第一個(gè)參數(shù)傳遞 false 。

參數(shù)描述
deep可選。 Boolean類型 指示是否深度合并對(duì)象,默認(rèn)為false。如果該值為true,且多個(gè)對(duì)象的某個(gè)同名屬性也都是對(duì)象,則該"屬性對(duì)象"的屬性也將進(jìn)行合并。
targetObject類型 目標(biāo)對(duì)象,其他對(duì)象的成員屬性將被附加到該對(duì)象上。
object1可選。 Object類型 第一個(gè)被合并的對(duì)象。
objectN可選。 Object類型 第N個(gè)被合并的對(duì)象。


實(shí)例

更多實(shí)例

遞歸方式合并兩個(gè)對(duì)象
采用遞歸方式合并兩個(gè)對(duì)象,并修改第一個(gè)對(duì)象。

合并 defaults 和 options 對(duì)象
合并 defaults 和 options 對(duì)象,并且不修改 defaults 對(duì)象。這是常用的插件開發(fā)模式。


jQuery 雜項(xiàng)方法jQuery 雜項(xiàng)方法

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)