首頁  >  工具  > $.extend([d],tgt,obj1,[objN])

返回值:ObjectjQuery.extend([deep], target, object1, [objectN])

jQuery $.extend() 方法概述

用一個或多個其他對象來擴展一個對象,返回被擴展的對象。

如果不指定target,則給jQuery命名空間本身進(jìn)行擴展。這有助于插件作者為jQuery增加新方法。 如果第一個參數(shù)設(shè)置為true,則jQuery返回一個深層次的副本,遞歸地復(fù)制找到的任何對象。否則的話,副本會與原對象共享結(jié)構(gòu)。 未定義的屬性將不會被復(fù)制,然而從對象的原型繼承的屬性將會被復(fù)制。

參數(shù)

target,[object1],[objectN]Object,Object,ObjectV1.0

target:一個對象,如果附加的對象被傳遞給這個方法將那么它將接收新的屬性,如果它是唯一的參數(shù)將擴展jQuery的命名空間。

object1:待合并到第一個對象的對象。

objectN:待合并到第一個對象的對象。

[deep],target,object1,[objectN]Object,Object,Object,ObjectV1.1.4

deep:如果設(shè)為true,則遞歸合并。

target:待修改對象。

object1:待合并到第一個對象的對象。

objectN:待合并到第一個對象的對象。

示例

描述:

合并 settings 和 options,修改并返回 settings。

jQuery 代碼:
var settings = { validate: false, limit: 5, name: "foo" };
var options = { validate: true, name: "bar" };
jQuery.extend(settings, options);
結(jié)果:
settings == { validate: true, limit: 5, name: "bar" }

描述:

合并 defaults 和 options, 不修改 defaults。

jQuery 代碼:
var empty = {};
var defaults = { validate: false, limit: 5, name: "foo" };
var options = { validate: true, name: "bar" };
var settings = jQuery.extend(empty, defaults, options);
結(jié)果:
settings == { validate: true, limit: 5, name: "bar" }
empty == { validate: true, limit: 5, name: "bar" }