* 1.对象合并:
* 对象合并不区分调用者,jQuery.extend与jQuery.fn.extend完全一致
* 也就是说对jQuery对象本身及jQuery所构造的对象没有影响
* 对象合并根据参数区分,参数中必须包括两个或两个以上对象
* 如:$.extend({Object}, {Object}) 或 $.extend({Boolean},{Object}, {Object})
* 对象合并返回最终合并后的对象,支持深度拷贝
$.extend(boolean,dest,src1,src2,src3...):第一个参数boolean代表是否进行深度拷贝,为true表示嵌套的子对象会得到所有的key的组合,如果为false,后
面得子对象的值直接覆盖前面的子对象的值
Java代码
例如:
* 2.为jQuery对象本身增加方法:
* 这种方式从调用者和参数进行区分
* 形式为 $.extend({Object})
* 这种方式等同于 jQuery.{Fnction Name}
用法: $.add()
* 对象合并不区分调用者,jQuery.extend与jQuery.fn.extend完全一致
* 也就是说对jQuery对象本身及jQuery所构造的对象没有影响
* 对象合并根据参数区分,参数中必须包括两个或两个以上对象
* 如:$.extend({Object}, {Object}) 或 $.extend({Boolean},{Object}, {Object})
* 对象合并返回最终合并后的对象,支持深度拷贝
$.extend(boolean,dest,src1,src2,src3...):第一个参数boolean代表是否进行深度拷贝,为true表示嵌套的子对象会得到所有的key的组合,如果为false,后
面得子对象的值直接覆盖前面的子对象的值
Java代码
例如:
$.extend( true, {},
{ name: "John", location: {city: "Boston",county:"USA"} },
{ last: "Resig", location: {state: "MA",county:"China"} } )={name:"John",last:"Resig",location:{city:"Boston",state:"MA",county:"China"}}
$.extend( false, {},
{ name: "John", location:{city: "Boston",county:"USA"} },
{ last: "Resig", location: {state: "MA",county:"China"} }
)=={name:"John",last:"Resig",location:{state:"MA",county:"China"}}
* 2.为jQuery对象本身增加方法:
* 这种方式从调用者和参数进行区分
* 形式为 $.extend({Object})
* 这种方式等同于 jQuery.{Fnction Name}
$.extend({
add:function(a,b){return a+b;}
});
用法: $.add()