$.extend(obj)和$.fn.extend(obj)的区别

$.extend(obj):

扩展jquery本身,添加方法:

$.extend({
add:function(a,b){
return a+b;
}
})
$.add(5,8) //return 13

这里是直接调用,$.add(5,8);不加任何对象。

 

$.fn.extend(obj):

对prototype进行扩展,为jquery类添加成员函数, jquery类的实例可以使用这个成员函数。

$.fn.extend({
clickwhile:function(){
$(this).click(function(){
alert($(this).val()) 
})
}
})
$('input').clickwhile();//当点击输入框会弹出该对象的Value值

 

$.extend()合并多个结构:

    value=$.extend({}{sa:"asdf"},{sd:"adsfasd"},"dsaf");
    alert(value.sa);

value的值为:object(sa:"asdf",sd:"absfasd","dsaf");

    value=$.extend({}{sa:"asdf"},{sa:"adsfasd"},"dsaf");
    alert(value.sa);

value的值为:object(sa:"adsfasd","dsaf"); 后面相同名字的结构的内容会覆盖前面的内容。

 

$.extend()原型:

extend(dest,src1,src2,src3...);

它的含义是将src1,src2,src3...合并到dest中,返回值为合并后的dest 。

可以省略dest,用法就像最开始的$.extend(obj),将整个Jquery当成dest函数,给他赋值。

 

看一个例子就完全明白了:

var arr=new Array("xieyutian","lizhenjing","helloworld","tianlanihao");
$(document).ready(function(){
    value=$.extend({ss:function(){
        alert("OK");}},{sa:"adsfasd"},"dsaf");
    dump_obj(value);
});

function dump_obj(myObject) {  
      var s = "";  
      for (var property in myObject) {  
       s = s + "\n "+property +": " + myObject[property] ;  
      }  
      alert(s);  
    }  

他会输出:

0: d
1: s
2: a
3: f
ss: function (){
alert("OK");}
sa: adsfasd

 

 

 

转载于:https://www.cnblogs.com/canbefree/p/3729229.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值