1.1 $.extend(result,item1,item2…..)

将所有的参数项都合并result中,返回result,会破坏result的结构。

1.2 $.extend({},item1,item2,……)

将所得的结果全部合并在{}中,并返回,不会破坏原有的项的结构。

1.3 $.extend(bool,{},item1,item2….)

Extend方法还有带bool型参数的重载。

bool型参数为true表示深拷贝,为false时表示浅拷贝。

示例:

var obj={name:“vanida”,age:25,address{provice:”河南”,city:”郑州”}};

var obj1={sex:”girl”,address{city:” 上海”}};

var result=$.extend(true,obj,obj1);

var result1=$.extend(false,obj,obj1);

结果:

result={name:“vanida”,age:25,sex:”gril”,address:{provice:”河南”,city:”上海”}};

result1={name:“vanida”,age:25,sex:”gril”,address:{ city:”上海”}};

说明:

当参数为ture时,即为深拷贝,obj的子项有与obj1中的子项相同属性的值不一样时,obj中子项的值会将obj1子项中的值给覆盖,当子项obj的属性跟obj1中的属性不同时,会与obj进行合并。

当参数为false时,子项obj中的子项中与obj1中的子项属性相同时,obj1中子项的属性值会将obj中的值给完全覆盖。

1.4 $.extend(item)

该方法是将item合并到Jquery的全局对象中去,相当于为Jquery全局对象添加了一个

静态方法(对应这里的静态方法,当然还有实例方法,在后边有介绍)。

示例:

$.extend({SayHello:function(value){alert(“hello “+value);}});

这样写过之后,就可以直接调用SayHello方法:

$.SayHello(“Olive”);

说明:该方法相当于为Jquery类添加了新的方法。

1.5 $.fn.extend(item)

上边提到的$.extend(item)说是为Jquery类添加了静态方法,那么这里的$.fn.extend(item)就是为每一个实例添加一个实例方法了。

示例:

$.fn.extend({sayName:function(name){alert(“hello “+name);}});

这样写过之后,在获取每一个示例之后,都可以调用该方法:

$(“#id”).sayName(“lucas”);

1.6 $.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效。

如扩展$.fn.hello(),即$.fn.hello()是对jquery扩展了一个hello方法,那么后面你的每一个jquery实例都可以引用这个方法了.

那么你可以这样子:$("#dom").hello();

源码:

jQuery.fn = jQuery.prototype ={

   init: function( selector, context ){//.... 

   //......

};

最新文章

  1. Apache InterfaceAudience
  2. Java并发编程之阻塞队列
  3. NHibernate系列文章二十八:NHibernate Mapping之Auto Mapping(附程序下载)
  4. 我的PHP之旅--认识数据库及数据库操作
  5. (转载)在状态栏即时显示Hint
  6. Windows内核之线程的调度,优先级,亲缘性
  7. Css3案例
  8. localStorage请使用getItem 和setITem
  9. keil c51的内部RAM(idata)动态内存管理程序(转)
  10. 头皮发麻的HTML课时一
  11. Sublime Text3使用汇总
  12. 网站内容禁止复制和粘贴、另存为的js代码
  13. MongoDB数据创建与使用
  14. HDU 1019(求最小公倍数 **)
  15. 使用VS Code调试Node
  16. RouterOS限速更高级运用
  17. sg函数的理解
  18. JS DOM操作 函数 事件 阻止事件冒泡
  19. eclipse cdt运行c程序报错“launch failed,binary not found”
  20. Android操作HTTP实现与服务器通信

热门文章

  1. UITableView 的常用可复制代码
  2. 【poj3252】 Round Numbers (数位DP+记忆化DFS)
  3. Java之集合(六)PriorityQueue
  4. SourceTree跳过Atlassian账号,免登陆,跳过初始设置
  5. Android_Activity启动模式
  6. Redis运行流程源码解析--转载
  7. 使用gitlab, jenkins搭建CI(持续集成)系统(2) -- 配置webhook触发构建
  8. CPU结构与指令执行过程简介
  9. c# combobox控件的使用
  10. 什么是汉明窗?加Hanmming窗的作用?