$.extend()的简易理解

本文详细介绍了jQuery中的extend()方法,该方法用于扩展一个对象的功能,可以实现对象之间的合并,并支持浅拷贝与深拷贝。文章通过示例展示了如何使用此方法以及不同参数设置下对象合并的行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jQuery中extend();

jQuery.extend([deep], target, object1, [objectN]);

用一个或多个其他对象来扩展一个对象,返回被扩展的对象。

如果不指定target,则给jQuery命名空间本身进行扩展。这有助于插件作者为jQuery增加新方法。 如果第一个参数设置为true,则jQuery返回一个深层次的副本,递归地复制找到的任何对象。否则的话,副本会与原对象共享结构。 未定义的属性将不会被复制,然而从对象的原型继承的属性将会被复制。

deep:如果设为true,则递归合并。

target:待修改对象。

object1:待合并到第一个对象的对象。

objectN:待合并到第一个对象的对象。

例一:

var a = { validate: false, limit: 5, name: "foo" };
var b = { validate: true, name: "bar" };
jQuery.extend(a, b);//没有设置deep属性,本身扩展
a == { validate: true, limit: 5, name: "bar" }
例二:
var a= {
prop1:"aaa",
prop2:"bbb"
}
var b = {
prop1:"aaaaaa",
prop3:"cccccc"
}

var c = $.extend(true,{},a,b);
console.log(c);//输出结果   Object{
    1. prop1:"aaaaaa"
    2. prop2:"bbb"
    3. prop3:"cccccc"}

console.log(a);//不变
console.log(b);//不变
//
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值