jQuery源码
jQuery的优势:
不用自己写循环 一路链式写法 大大提高了效率
转义及编码(\u, \x) - 邹天得 - 博客园
基本概括 整体骨架
支持commonjs规范
jQuery.fn:是给jQuery的prototype取了别名
jQuery是一个类,重构原型时加上constructor
原型上的方法:
toArray:把类数组转换成数组
get:jQuery对象转换为原生js对象
each:each只有一个。就是jQuery上的each。
isArrayLike:是否是(类)数组对象。
jQuery是什么 $是什么
jQuery提供的方法只有2个位置:
- 写在原型上
- 写在对象上作为其的私有属性
jQuery实例对象
context:上下文
jQuery.fn.init
init的实例一定是找init.prototype,但是我又把init.prototype=jQuery.fn,我把init的原型重定向为jQuery的原型,这样new出来的自然就是jQuery的实例
这样我可以省去new
3种方式去创建jquery实例:
通过选择器
根据dom节点
makeArray:创造一个类数组出来
jQuery中的extend
noConflict
转移$和jQuery的使用权
jQuery.noConflict() 函数详解_chunchun1230的博客-CSDN博客_jquery noconflict
支持的语法:
extend({})
extend(true, {}) 就表示我的覆盖原来jQuery中的,深度覆盖
往jQuery中继续扩展方法
- 动画,比如css
- 事件
- ajax
- ……
读jQuery源码提上日程,读懂一点都是天大的帮助