我们经常用jquery的选择器,甚至为jquery写插件写扩展,今天来讨论一下jquery内部的实现原理(基于jquery-1.11.1.js)。
一、关于window.$和window.jQuery
其实在jquery中最开始只定义了一个jQuery局部变量,就是一个函数对象,即如下的形式
jQuery=function(selector, context){
....
}
在jquery的末尾位置处,才将jQuery局部变量赋值给了window.$和window.jQuery,即window.$ = window.jQuery = jQuery;
这里需要说明的是,jQuery指向的匿名函数对象如果仅仅从形式上看,它甚至不一定返回一个对象,因为javascript是动态语言具有函数式编程的特性,可以返回