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

為了賬號安全,請及時綁定郵箱和手機立即綁定

這個的邏輯有點無法理解的呀。。

想通了耶。。。


<script type="text/javascript">

? var num=0;

? function startCount() {

? ? document.getElementById('count').value=num;

? ? num=num+1;

? ? setTimeout("startCount()",2000);?

? }

? ? setTimeout("startCount()",1000);?

</script>


函數(shù)?startCount()內(nèi)外都設(shè)置?setTimeout()該怎么理解呢? ?為什么只在函數(shù)startCount()中設(shè)置? setTimeout("startCount()",1000)沒有效果呢?


正在回答

2 回答

function外的setTimeout()不是必須的,只不過這樣寫時不需要點擊文本框計數(shù)器就會從頁面開始載入時自動運行了。

3 回復(fù) 有任何疑惑可以回復(fù)我~
#1

Beckybei

function內(nèi)的setTimeout() 在完成這個函數(shù)里就是必須的 可以這樣子理解嗎?
2015-04-23 回復(fù) 有任何疑惑可以回復(fù)我~
#2

Groune 回復(fù) Beckybei

這個是我理解錯了,回頭來看看還是血舞殘殤大大的解釋才是正確的。 只寫function startCount() { document.getElementById('count').value=num; num=num+1; setTimeout("startCount()",1000); }只是相當(dāng)于定義了一個名字叫startCount的函數(shù),但是沒有調(diào)用。而在function外寫startCount()才進行了第一次調(diào)用,第一次調(diào)用后由于這個計數(shù)函數(shù)內(nèi)部又自己調(diào)用自己,所以就開始循環(huán)計數(shù)了。
2015-04-23 回復(fù) 有任何疑惑可以回復(fù)我~
#3

Groune 回復(fù) Beckybei

我原來為什么會理解錯呢,是因為在計數(shù)器開始顯示數(shù)字后直接把function外的startCount刪掉了,但是不知道由于什么原因(我猜是因為這個函數(shù)還在內(nèi)存中)計數(shù)器依舊被調(diào)用了,給我一個錯誤的理解。 其實你可以重新打開頁面或者刷新一下試試,先不寫外面的startCount看看會發(fā)生什么,然后再把外面的startCount寫上,延遲時間可以長一些(如10秒),這樣能比較直觀的理解。
2015-04-23 回復(fù) 有任何疑惑可以回復(fù)我~
#4

Beckybei 回復(fù) Groune

謝謝!
2015-04-23 回復(fù) 有任何疑惑可以回復(fù)我~
查看1條回復(fù)

setTimeout("startCount()",1000); 這句話是1秒之后調(diào)用1次startCount這個函數(shù),是先把函數(shù)調(diào)用起來

然后setTimeout("startCount()",2000); 這句話是隔2秒之后再調(diào)用該函數(shù),這樣就可以做到循環(huán)調(diào)用了,類似于遞歸

1 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

這個的邏輯有點無法理解的呀。。

我要回答 關(guān)注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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