文章詳情頁(yè)
為什么要使用javascript函數(shù)包裝器(添加在coffeescript中)“call(this)”
瀏覽:133日期:2024-05-10 15:09:02
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解決為什么要使用javascript函數(shù)包裝器(添加在coffeescript中)“call(this)”?
它正在創(chuàng)建一個(gè)函數(shù),然后使用父函數(shù)/對(duì)象范圍進(jìn)行調(diào)用。
.call和.apply是調(diào)用函數(shù)的不同方法。您基本上創(chuàng)建了一個(gè)函數(shù),除了在自己的范圍內(nèi)設(shè)置a = 1之外,什么也不做。
在javascript中,您需要意識(shí)到每個(gè)函數(shù)都是一個(gè)對(duì)象,并且this是指當(dāng)前對(duì)象/函數(shù)的內(nèi)容。從函數(shù)內(nèi)部使用.call(this)替代this,并將其替換為調(diào)用上下文中的替代。
解決方法當(dāng)我使用最新(1.0)版本的coffee-script時(shí),一個(gè)簡(jiǎn)單的javascript輸出看起來(lái)像這樣(默認(rèn)):
(function() { var a; a = 1;}).call(this);
什么 .CALL(本) 做,哪些是添加它的原因是什么?
標(biāo)簽:
JavaScript
上一條:在JavaScript中鏈接.bind()調(diào)用出乎意料的結(jié)果?下一條:CSS3的border-radius屬性和border-collapse:collapse不能混合使用如何使用邊框半徑創(chuàng)建帶有圓角的折疊表格?
相關(guān)文章:
1. mysql優(yōu)化 - 關(guān)于mysql分區(qū)2. php laravel框架模型作用域3. vue.js - vue 打包后 nginx 服務(wù)端API請(qǐng)求跨域問(wèn)題無(wú)法解決。4. node.js - 在vuejs-templates/webpack中dev-server.js里為什么要exports readyPromise?5. java - Atom中文問(wèn)題6. 請(qǐng)教各位大佬,瀏覽器點(diǎn) 提交實(shí)例為什么沒(méi)有反應(yīng)7. javascript - ionic2 input autofocus 電腦成功,iOS手機(jī)鍵盤(pán)不彈出8. html5 - 如何實(shí)現(xiàn)帶陰影的不規(guī)則容器?9. css3 - 這個(gè)形狀使用CSS怎么寫(xiě)出來(lái)?10. javascript - 為什么這個(gè)點(diǎn)擊事件需要點(diǎn)擊兩次才有效果
排行榜

熱門(mén)標(biāo)簽