您的位置:首页 > Web前端 > JQuery

【jQuery-1.7.2源码分析】extend

2013-04-14 17:04 489 查看
jQ的扩展分两种

1. 把相对紧凑的方法统一在一处,因此,在内部写法上看起来是一个个的模块,这样便于维护。其中分为两类:

1) 基于jQuery这个对象,也就是静态属性/方法的作用,这部分的扩展更为通用,比如 attr: function( elem, name, value, pass ),脱离jQ对象也可以使用

2) 基于 prototype 的,内部大多只是借用了静态属性/方法

2. 当作工具方法

如需要给obj = {a:1, b:2}对象加几个属性,就直接obj = jQuery.extend(obj, {})

这部分没啥好说的,就一个方法,而且不长,我不打算贴原版代码,因为我觉得凡是jQ的写法都要批判着看,它的确功能强大,但不代表连带它的代码风格都要推广。

下面给出我的版本,如果需要原版,请自行下载。

?
  

技巧:

1. 数组也可以用for in,这时 key 是数组索引

?
注意:关于 for in 是否有序,参考 w3help

只要 object 的 key 没有数字,遍历顺序和定义顺序是相同的;

如果有数字,会先把数字排好序,然后才是非数字部分,遍历顺序也是先数字,后非数字
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: