在 JavaScript 中,有兩種定時器:setInterval() 和 setTimeout()。這兩種定時器都可以用來延遲執(zhí)行一段代碼或者周期性地執(zhí)行一段代碼。
setTimeout()
setTimeout() 方法可以讓代碼在指定的時間間隔后執(zhí)行一次。該方法有兩個參數(shù),第一個參數(shù)是要執(zhí)行的代碼塊,第二個參數(shù)是延遲時間,以毫秒為單位。如果要取消一個定時器,可以使用 clearTimeout() 方法。
// 延遲執(zhí)行代碼塊
setTimeout(function() {
// 要執(zhí)行的代碼塊
}, 1000);
// 取消定時器
var timerId = setTimeout(function() {
// 要執(zhí)行的代碼塊
}, 1000);
clearTimeout(timerId);
setInterval()
setInterval() 方法可以讓代碼以固定時間間隔周期性地執(zhí)行。該方法有兩個參數(shù),第一個參數(shù)是要執(zhí)行的代碼塊,第二個參數(shù)是時間間隔,以毫秒為單位。如果要取消一個定時器,可以使用 clearInterval() 方法。
// 周期性執(zhí)行代碼塊
setInterval(function() {
// 要執(zhí)行的代碼塊
}, 1000);
// 取消定時器
var timerId = setInterval(function() {
// 要執(zhí)行的代碼塊
}, 1000);
clearInterval(timerId);
需要注意的是,setInterval() 方法會一直周期性地執(zhí)行代碼,直到定時器被取消或者頁面被卸載。因此,使用 setInterval() 方法時需要注意代碼的執(zhí)行次數(shù)和執(zhí)行時間,避免對頁面性能造成影響。