Zepto源码笔记(一)

最近在研究Zepto的源码,这是第一篇分析,欢迎你们继续关注,第一次写源码笔记,但愿你们多指点指点,第一篇文章因为首次分析缘由不会有太多干货,但愿后面的文章能成为各位大大心目中的干货。数组

 

Zepto是一个匿名函数的运行结果,而zepto是该匿名函数中定义的一个对象,注意区分函数

 

 zepto.matches 

match = ~zepto.qsa(parent, selector).indexOf(element)


zepto.qsa
:zepto优化过的选择器优化

zepto.qsa(parent, selector).indexOf(element):若选择器返回值中没法找到element则该语句运行值为-1spa

~zepto.qsa(parent, selector).indexOf(element)  :对后面的值进行取反,运算符优先级低于"."code

 

function type(obj)

若为null则返回"null"对象

不然,返回class2type[class2type.toString(obj)]blog

zepto会在代码初始化部分初始化class2type对象:element

$.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(i, name) {
    class2type[ "[object " + name + "]" ] = name.toLowerCase()
})

 

function compact

返回不含null和undefined的数组(undefined == null 为真,0 == nul和'' == null为假)zepto

相关文章
相关标签/搜索