$.extend()用来扩展jQuery类本身,为类添加新方法
$.fn.extend()用来扩展jQuery对象方法。
extend() 的一般用法
extend(dest,src1,src2,...);
它的含义是将src1,src2,…合并到dest上,返回值为合并后的dest。
使用方法:
var dest = $.extend({},{name:"tom",age: 21},{name: "levon", age: 28, sex: "male"});
//{}作为dest参数
结果:
dest = {name: "levon", age: 28, sex: "male"};
注意:在前面的参数与后面的参数有相同的名字时,后面的参数值将会覆盖前面参数的值。
extend() 省略dist用法
extend(src);
省略dest参数的时候,extend就只能有一个src参数,而且是将src合并到调用extend的对象当中。
使用方法:
$.extend(src)
$.extend({hello:function (){console.log("Hello World!");}});
该方法将src合并到jQuery的全局对象中。
$.fn.extedn(src)
$.fn.extend({hello:function (){console.log("Hello World!");}});
该方法将src合并到jQuery的实例对象中。
例子:
$.extend({newbee: {}});
这是在jQuery全局对象中扩展名为newbee的命名空间。
$.extend($.newbee,{hello:function (){console.log("Hello World!");}});
这是将hello函数扩展到newbee命名空间上。
extend() boolean 参数用法
$.extend(boolean, src1, src2, ...);
当第一个参数为true时,其余参数将会深度拷贝,并返回合并后的值。
使用方法:
$.extend(true, {hello:{say:"hello"}},{world:"say no"});
结果:
dest = {hello:{say:"hello"},world:"say no"}