jquery.extend源码分析
2014-04-05 11:50
447 查看
(一)jQuery.extend的用法有以下几种:
1.扩展jQuery,插件开发时使用。有两种方式,一是扩展jQuery的静态方法,另一种是扩展jQuery对象的实例方法。
//扩展静态方法 $.extend({ sayHello:function(){console.log("hello")} }); //扩展实例方法 $.fn.extend({ log:function(){ console.log(this); } });
2.扩展对象。参数为任意数量的对象,extend方法会让第一个对象继承后面对象的特性。
var chinese = {country:"china", color:"yello"}; var kids = {hobby:"play game"}; var boy = {sex:"male"}; // 让chinese继承kids 和boy的特性 $.extend(chinese, kids, boy); console.log(chinese); //Object {country: "china", color: "yello", hobby: "play game", sex: "male"}3.包含层次地扩展对象。当后面的参数的某个属性值为对象类型,需要将第一个参数设置为true,表示使用深拷贝。关于浅拷贝和深拷贝,后文会说。
var kids = {life:{morning:"watch_tv"}}; var boy = {life:{afternoon:"play_video_game"}}; // 让chinese继承kids 和boy的特性 $.extend(true, kids, boy); console.log(kids); // Object{life:{morning:"watch_tv", afternoon:"play_video_game"}}这个例子中如果不适用true参数,kids对象中的life属性会被覆盖。
(二)深拷贝和浅拷贝
深拷贝和浅拷贝是javascript实现继承的一种方式,他的思路是将a对象的所有属性拷贝给b对象,这样b对象就继承了a对象的所有属性。
阅读更多相关文章推荐
- jQuery源码研究分析学习笔记-jQuery.extend()、jQuery.fn.extend()(八)
- jQuery.extend()方法和jQuery.fn.extend()方法源码分析
- jQuery 源码分析4: jQuery.extend
- jQuery中extend()源码分析
- Javascript笔记:(实践篇)从jQuery插件技术说起-分析extend方法的源码(发现extend方法里有bug)(下篇)
- jQuery源码分析系列:Extend扩展方法
- jQuery.extend()方法和jQuery.fn.extend()方法源码分析
- jquery 源码分析-核心(2)整个骨架jQuery.extend,jQuery.fn.extend
- jquery源码分析之扩展函数 extend, $.extend
- 【jQuery-1.7.2源码分析】extend
- jquery源码分析之扩展函数 extend, $.extend
- Javascript笔记:(实践篇)从jQuery插件技术说起-分析extend方法的源码(发现extend方法里有bug)(下篇)
- 【jQuery-1.7.2源码分析】extend
- jQuery源码分析以及从jQuery对象创建的角度理解extend方法的原理
- jQuery源码分析之extend方法
- Javascript笔记:jQuery源码分析以及从jQuery对象创建的角度理解extend方法的原理
- jQuery1.6.1源码分析系列 链接
- jQuery1.9.1--attr,prop与val方法源码分析
- jQuery缓存实现的分析-及源码解读
- Jquery源码分析(二)