jquery源码分析
写这个系列的博客只是想记录自己的理解,并且提出自己的疑问。欢迎交流,指正。
文章的顺序并不是按照特定的逻辑来编排的,只是自己看源码的时候碰到自己希望记录的地方,就随便写点。
//merge 将第二个类数组添加到第一个类数组的末尾 返回新的对象
//我写的数组 但是jquery对象是一个类数组的对象
merge: function(first, second) {
var len = +second.length,
j = 0,
i = first.length;
//注意循环的次数
for (; j < len; j++) {
first[i++] = second[j];//i++
}
first.length = i;
return first;
},
merge在jquery中的很多地方都有用到
比如pushStack方法
pushStack: function(elems) {
// Build a new jQuery matched element set 创建一个新的jquery匹配的元素集合
var ret = jQuery.merge(this.constructor(), elems);
// Add the old object onto the stack (as a reference)
ret.prevObject = this;
ret.context = this.context;
// Return the newly-formed element set
return ret;
},