[英]setInterval javascript - how to call function
這是兩個類似使用setInterval函數的簡單示例:
http://codepen.io/anon/pen/MwYOOJ
在第一個示例中,setInterval函數不起作用,而在使用以下語法的第二個版本中,它運行良好。
/* This part does not work */
var i = 0;
function displayNumber() {
i++;
$('#result').html(i);
}
setInterval(displayNumber(), 500);
/* This part does work */
var j = 0;
function displayNumberOk() {
j++;
$('#result-ok').html(j);
}
setInterval(function() { displayNumberOk() }, 500);
在規范中,我可以找到:
setInterval(function,milliseconds,param1,param2,...)
為什么不能直接使用函數名稱?
在第一個示例中,您擁有
setInterval(displayNumber(), 500);
您是直接調用 displayNumber
,而不是將其作為參數傳遞。
實際上,使用
setInterval(displayNumber, 500);
應該足夠了(請注意缺少()
,以便不調用它而是將其作為參數傳遞 )。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.