最近閱讀zepto(版本v1.1.6)源碼的過(guò)程中,有個(gè)地方?jīng)]有想明白。首先看到第155行:zepto.Z = function(dom, selector) {
dom = dom || []
dom.__proto__ = $.fn
dom.selector = selector || ''
return dom
}其中dom.__proto__ = $.fn是把dom array指向$.fn,使得這個(gè)dom array能夠使用$.fn的所有方法,這個(gè)可以理解,沒(méi)有問(wèn)題。但是在第874行中,有一句這樣的代碼:zepto.Z.prototype = $.fn我的理解是,這一句話讓zepto.Z繼承自$.fn,但是上文的dom.__proto__ = $.fn已經(jīng)實(shí)現(xiàn)了讓“這個(gè)dom array能夠使用$.fn的所有方法”的功能了,為什么還要加這一句話呢?后來(lái)我自己參照寫了個(gè)demo,代碼如下:這里面并沒(méi)有otpez.Z.prototype = $.fn,能夠正確輸出Hello otpez!所以希望能夠得到大神的解答,zepto源碼中的zepto.Z.prototype = $.fn到底是用來(lái)干嘛的?謝謝!
zepto源碼中關(guān)于`zepto.Z.prototype = $.fn`的問(wèn)題
四季花海
2018-08-08 14:14:41