首页 > 代码库 > jQuery.extend函数详细解释

jQuery.extend函数详细解释

最近在研究jQuery。把jQuery.extend扩展函数的用法记录下来。

1、扩展jQuery静态方法.

1技术分享$.extend({
2技术分享test:function(){alert(‘test函数‘)}
3技术分享})

用法: $.test()

2、合并多个对象.
为jQuery.extend(css1,css2)为例,css1,css2个有一些属性(法照样会比处理,这里之讲属性).
extend函数会把css2有而css2没有的属性加到css1中,如果css2的某个属性与css1的某个属性名称享用,就会用css2的属性去覆盖css1的同名属性。css1就是最后的整和对象。或者也可以用 :
var newcss = jquery.extend(css1,css2)  newcss就是合并的新对象。
var newcss = jquery.extend({},css1,css2) newcss就是合并的新对象.而且没有破坏css1的结构。

1技术分享//用法: jQuery.extend(obj1,obj2,obj3,技术分享..)
2技术分享var Css1={size: "10px",style: "oblique"}
3技术分享var Css2={size: "12px",style: "oblique",weight: "bolder"}
4技术分享$.jQuery.extend(Css1,Css2)
5技术分享//结果:Css1的size属性被覆盖,而且继承了Css2的weight属性
6技术分享// Css1 = {size: "12px",style: "oblique",weight: "bolder"}
7技术分享


3。深度镶套对象
新的extend()允许你更深度的合并镶套对象。下面的例子是一个很好的证明。
 1技术分享// 以前的 .extend()   
 2技术分享   jQuery.extend(   
 3技术分享     { name: “John”, location: { city: “Boston” } },   
 4技术分享     { last: “Resig”, location: { state: “MA” } }   
 5技术分享   );   
 6技术分享    // 结果:   
 7技术分享    // => { name: “John”, last: “Resig”, location: { state: “MA” } }
 8技术分享  // 新的更深入的 .extend()   
 9技术分享   jQuery.extend( true,   
10技术分享   { name: “John”, location: { city: “Boston” } },   
11技术分享     { last: “Resig”, location: { state: “MA” } }   
12技术分享  );   
13技术分享  // 结果   
14技术分享   // => { name: “John”, last: “Resig”,   
15技术分享  //      location: { city: “Boston”, state: “MA” } }  
16技术分享
17技术分享

jQuery.extend函数详细解释