題目描述原文中,下列相關(guān)代碼部分提現(xiàn)柯里化函數(shù)的 提前返回和延遲執(zhí)行 兩大特點(diǎn),并且這樣代碼中只需要判斷一次瀏覽器類(lèi)型。我對(duì)于代碼的理解在于,每次實(shí)際調(diào)用addEvent的時(shí)候,代碼會(huì)進(jìn)行一次函數(shù)執(zhí)行,然后if(window.addEventListener) { ... } 這個(gè)內(nèi)容還會(huì)進(jìn)行一次瀏覽器判斷。感覺(jué)我的想法和作者的想法相悖了,所以我想問(wèn)一下,為什么if(window.addEventListener)在實(shí)際應(yīng)用中只執(zhí)行一次。即使下次調(diào)用addEvent的時(shí)候,也不會(huì)進(jìn)行瀏覽器判斷題目來(lái)源及自己的思路這是我在掘金上看到的一個(gè)案例,代碼在后面作者:小興nice鏈接:https://juejin.im/post/5b8350...來(lái)源:掘金著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。相關(guān)代碼var addEvent = (function() { if(window.addEventListener) { // 只判斷一次瀏覽器類(lèi)型 return function(el, type, fn, capture) {
el.addEventListener(type, function(e) {
fn.call(el, e);
}, capture);
}
}else { return function(ele, type, fn) {
el.attachEvent('on' + type, function(e) {
fn.call(el, e);
})
}
}
})()
柯里化(curring)的實(shí)際運(yùn)用
BIG陽(yáng)
2018-09-08 09:54:34