extend 有2种常用的方法:
1 扩充 jQuery ,用法详见api。。
2 对象的扩充(我更想叫它合并): 后面的覆盖前面的, 并且返回被覆盖后的对象...
var objectA = {a : 'aaa' , b: 'bbb' } ; var objectB = {c : 'ccc' , b: 'b' } ;
var opt = jQuery.extend(objectA, objectB);
console.log(opt); // 结果 opt {a:'aaa', b:'b' , c:'ccc'};
没事,就写了个假的:
先写一个函数: var MyExt = function () {...}
1 扩充,一般是基于 MyExt['name'] = xxx, 所以,当传一个参数时:
if(arguments.length == 1) {
var obj = arguments[0]; // 让obj等于第一个参数
var target = this; // this 是 MyExt
for( var name in obj){
target[name] = obj [name]; //加入扩展
}
}
2 覆盖, 就让他重复好了,,
if(arguments.length == 2) {
var obj1 = arguments[0], obj2 = arguments[1];
var target = obj1;
for( var name in obj2){
target[name] = obj2 [name];
}
return target;
}
所以,这个方法的雏形就有了(一个可以扩展MyExt,和合并对象的extend), 当然,是应该优化的!
MyExt.extend = MyExt.prototype.extend = function() {
if(arguments.length == 1) {
var obj = arguments[0];
var target = this; // this 是 MyExt
for( var name in obj){
target[name] = obj [name];
}
}
if(arguments.length == 2) {
var obj1 = arguments[0], obj2 = arguments[1];
var target = obj1;
for( var name in obj2){
target[name] = obj2 [name];
}
return target;
}
}
如果有兴趣, 参见 jquery-1.3.1.js ... 550 - 600行左右,
原文:
http://hi.baidu.com/ezscript/blog/item/05a73752e2d2d32842a75bc4.html
分享到:
相关推荐
jQuery.extend 函数详解 Jquery的扩展方法extend是我们在写插件的过程中常用的方法,该方法有一些重载原型,在此,我们一起去了解了解。
1.jquery.extend(object); 为扩展jQuery类本身.为类添加新的方法。 jquery.fn.extend(object);给jQuery对象添加方法。 $.extend({ add:function(a,b){return a+b;} }); //$.add(3,4); //return 7 jQuery添加...
原生js实现jquery $.extend方法 通过遍历对象属性来实现
jQuery:jQuery.extend函数详解
jQuery_extend 函数详解
extend()是jQuery中一个重要的函数,作用是实现对对象的扩展, 它经常用于jQuery插件的开发,jQuery内部也使用它来扩展属性方法,如上篇文章中讲到的noConflict方法,就是用extend方法来扩展的。 在jQuery的API手册...
NULL 博文链接:https://gghaomm.iteye.com/blog/1746699
jQuery自定义了jQuery.extend()和jQuery.fn.extend()方法.其中jQuery.extend()方法能够创建全局函数或者选择器,而jQuery.fn.extend()方法能够创建jQuery对象方法. 例如: 代码如下: jQuery.extend({ showName : ...
本文实例讲述了JQuery中extend的用法。分享给大家供大家参考。具体分析如下: extend()函数是jQuery的基础函数之一,作用是扩展现有的对象。extend是我们在写插件的过程中常用的方法,该方法有一些重载原型。$....
jQuery自定义了jQuery.extend()和jQuery.fn.extend()方法.其中jQuery.extend()方法能够创建全局函数或者选择器,而jQuery.fn.extend()方法能够创建jQuery对象方法.
$.extend方法可以扩展JSON对象,用一个或多个其他对象来扩展一个对象,返回被扩展的对象。...jQuery.extend(settings, options); 结果 settings == { validate: true, limit: 5, name: “bar” } 例二 合并 defaul
jquery.validate.extend.js
jQuery为开发插件提拱了两个方法,分别是: 代码如下: jQuery.fn.extend(object); jQuery.extend(object); jQuery.extend(object); 为扩展jQuery类本身.为类添加新的方法。 jQuery.fn.extend(object);给jQuery对象...
NULL 博文链接:https://bijian1013.iteye.com/blog/2255035
1.$.extend({},defaults, options) 这样做的目的是为了保护包默认参数。也就是defaults里面的参数。 做法是将一个新的空对象({})做为$.extend的第一个参数,defaults和用户传递的参数对象紧随其后,这样做的好处是...
extend()是jQuery中一个重要的函数,作用是实现对对象的扩展, 它经常用于jQuery插件的开发,jQuery内部也使用它来扩展属性方法,如noConflict方法,就是用extend方法来扩展的。下面来一起深入的再学习下jquery中...
主要介绍了jQuery.extend 与 jQuery.fn.extend的用法及区别,结合实例形式分析了jQuery.extend与jQuery.fn.extend的功能、使用方法及区别,需要的朋友可以参考下