第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

關(guān)于addLoadEvent函數(shù)的一點(diǎn)小疑問

關(guān)于addLoadEvent函數(shù)的一點(diǎn)小疑問

慕尼黑5688855 2018-12-20 16:14:52
function styleHeaderSibling(tag, theclass){    if(! document.getElementsByTagName)  return false;    var headers = document.getElementsByTagName("h1");    for(var i =0; i<headers.length; i++){        var elem = getNextElement(headers[i].nextSibling);        //elem.style.fontWeight = "bold";        //elem.style.fontSize = "1.2em";        //elem.className ="intro";       //有些已有className會被覆蓋掉。所以寫出addClass函數(shù)。        addClass(elem, "intro");         }addLoadEvent(function(){    styleHeaderSibling("h1", "intro");});這個(gè)是dom編程藝術(shù) 第九章對函數(shù)進(jìn)行抽象的一點(diǎn)內(nèi)容,我想問的是能不能直接寫addLoadEvent(styleHeaderSibling("h1", "intro"));進(jìn)行調(diào)用。我試了下代碼,是可以運(yùn)行的,這里我有兩點(diǎn)疑問:1、addLoadEvent(func)函數(shù)的定義,func是不加括號的,用這個(gè)語句addLoadEvent(styleHeaderSibling("h1", "intro"));調(diào)用為什么還能正常運(yùn)行。2、為什么要特地弄個(gè)匿名函數(shù)出來。必要性在哪里?
查看完整描述

1 回答

?
智慧大石

TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超3個(gè)贊

寫法一:addLoadEvent(styleHeaderSibling("h1", "intro"))你這么寫,運(yùn)行的時(shí)候,styleHeaderSibling("h1", "intro")函數(shù)在這就被調(diào)用了。


寫法二:addLoadEvent(function(){


styleHeaderSibling("h1", "intro");

});


是交給addLoadEvent方法里面的callback執(zhí)行函數(shù)執(zhí)行


通俗說應(yīng)該就是,第一個(gè)寫法執(zhí)行完styleHeaderSibling再執(zhí)行addLoadEvent

第二個(gè)寫法是先執(zhí)行addLoadEvent,函數(shù)體內(nèi)部再執(zhí)行styleHeaderSibling


論必要性,其實(shí)是看你編程時(shí)的邏輯了,各有場合


第二種寫法是回調(diào)函數(shù),傳入的函數(shù)可以在主函數(shù)執(zhí)行的時(shí)候隨時(shí)觸發(fā),第一種寫法相當(dāng)于把傳的函數(shù)執(zhí)行完的再執(zhí)行主函數(shù)


查看完整回答
反對 回復(fù) 2019-01-16
  • 1 回答
  • 0 關(guān)注
  • 396 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號