Jquery的框架解析

时间:2023-03-09 08:42:26
Jquery的框架解析

最近闲的刁痛,想看看jQuery源码.但是这个源码看起来 还是挺费劲的.所以呢整理一份框架出来,

避免走入jQuery关键字的误区,我用Gys代替关键字jQuery.

下面是源码:

 (function(){
function Gys(arr){
return new Gys.fn.init(arr);
}
Gys.merge=function(first,second){
var i=first.length;
var len=second.length;
var j=0;
for(;j<len;j++){
first[i++]=second[j];
}
first.length=i;
return first;
};
Gys.makeArray=function(arr,result){
var ret=result||[];
Gys.merge(ret,arr);
return ret;
};
Gys.fn=Gys.prototype;
Gys.fn.length=0;
Gys.fn.init=function(arr){
return Gys.makeArray(arr,this);
};
Gys.fn.say=function(str){
for(var i=0;i<this.length;i++){
console.log("具体对象"+this[i]+"说:>>>>>>"+str);
}
};
Gys.say=function(p){
console.log("全局对象说"+p);
}
Gys.fn.init.prototype=Gys.fn;
window.Gys=Gys;
})();
Gys.say("hello,世界");
Gys(["guoyansi",2,3]).say("I love you");

阅读jQuery源码是学习js的最佳教材.