關(guān)于頁(yè)面每秒刷新時(shí)間的問題,兩種代碼有什么區(qū)別?
我嘗試每隔1秒顯示一次時(shí)間,這樣就可以:
window.onload=function(){
//定時(shí)器每秒調(diào)用一次fnDate()
? ?setInterval(function(){fnDate();},1000);
};
function fnDate(){
? ?var D=new Date();
? ?alert(D);
}
這樣就不行:
window.onload=function(){
//定時(shí)器每秒調(diào)用一次fnDate()
? ?setInterval(fnDate(),1000);
};
function fnDate(){
? ?var D=new Date();
? ?alert(D);
}
2016-04-26
兩種寫法別分是:
A: setInterval("fnDate()",1000);
B: setInterval(fnDate,1000);
注意 "" 與 () 在什么時(shí)候使用,什么時(shí)候不使用。
2016-04-26
setInterval(fnDate(),1000);改為setInterval(fnDate,1000);setInterval("fnDate()",1000);或者就達(dá)到你要的效果了
下面說說原因
setInterval(要調(diào)用的函數(shù)或要執(zhí)行的代碼串,1000);
fnDate()是直接執(zhí)行,如果有返回值,相當(dāng)于返回值放到setInterval的第一個(gè)參數(shù)位置,所以人家執(zhí)行一次就不動(dòng)了。
fnDate是要調(diào)用的函數(shù),放到第一個(gè)參數(shù)位置到時(shí)間了再執(zhí)行,所以一直執(zhí)行。
"fnDate()"是代碼串,每到時(shí)間解析一次,解析成fnDate(),然后達(dá)到一直執(zhí)行
如有錯(cuò)誤,望指正