計(jì)時(shí)器是 javascript 中用于在特定時(shí)間間隔執(zhí)行代碼或任務(wù)的內(nèi)置功能。主要用于定期更新內(nèi)容、執(zhí)行延遲任務(wù)、控制動(dòng)畫和過渡。提供 settimeout() 和 setinterval() 兩種類型計(jì)時(shí)器。settimeout() 在指定延遲后執(zhí)行一次函數(shù),setinterval() 以指定間隔重復(fù)執(zhí)行函數(shù)。可以通過 cleartimeout() 和 clearinterval() 停止計(jì)時(shí)器。
JS 計(jì)時(shí)器
計(jì)時(shí)器的定義和目的
計(jì)時(shí)器是 JavaScript 中的內(nèi)置功能,用于在特定時(shí)間間隔執(zhí)行代碼或任務(wù)。它們主要用于以下目的:
定期更新動(dòng)態(tài)內(nèi)容(例如,每秒刷新時(shí)鐘)
執(zhí)行延遲或定時(shí)任務(wù)(例如,在 5 秒后顯示模態(tài)窗口)
控制動(dòng)畫和過渡
計(jì)時(shí)器類型
JavaScript 提供了兩種類型的計(jì)時(shí)器:
setTimeout():在指定的時(shí)間延遲后執(zhí)行一次函數(shù)。
setInterval():以指定的時(shí)間間隔重復(fù)執(zhí)行函數(shù)。
使用方法
setTimeout()
setTimeout(function, milliseconds);
登錄后復(fù)制
function:要執(zhí)行的函數(shù)。
milliseconds:延遲執(zhí)行函數(shù)的時(shí)間,單位為毫秒。
setInterval()
setInterval(function, milliseconds);
登錄后復(fù)制
function:要執(zhí)行的函數(shù)。
milliseconds:函數(shù)重復(fù)執(zhí)行的時(shí)間間隔,單位為毫秒。
示例
使用 setTimeout() 在 5 秒后顯示警報(bào):
setTimeout(() => { alert("5 秒已過!"); }, 5000);
登錄后復(fù)制
使用 setInterval() 每秒更新時(shí)鐘:
setInterval(() => { const date = new Date(); document.getElementById("clock").innerHTML = date.toLocaleTimeString(); }, 1000);
登錄后復(fù)制
停止計(jì)時(shí)器
要停止計(jì)時(shí)器,可以使用 clearTimeout() 或 clearInterval() 方法:
clearTimeout(timerId); // 停止 setTimeout() 計(jì)時(shí)器 clearInterval(timerId); // 停止 setInterval() 計(jì)時(shí)器
登錄后復(fù)制
其中 timerId 是啟動(dòng)計(jì)時(shí)器時(shí)返回的 ID。