定時(shí)器

2024-01-23 17:31 更新

本模塊提供基礎(chǔ)的定時(shí)器能力,支持按照指定的時(shí)間執(zhí)行對(duì)應(yīng)函數(shù)。

說(shuō)明

本模塊首批接口從API version 3開(kāi)始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。

setTimeout

setTimeout(handler: Function | string, delay?: number, ...arguments: any[]): number

設(shè)置一個(gè)定時(shí)器,該定時(shí)器在定時(shí)器到期后執(zhí)行一個(gè)函數(shù)。

該定時(shí)器在回調(diào)被執(zhí)行后自動(dòng)刪除,或使用clearTimeout接口手動(dòng)刪除。

系統(tǒng)能力: SystemCapability.ArkUI.ArkUI.Full

參數(shù):

參數(shù)名

類(lèi)型

必填

說(shuō)明

handler

Function | string

定時(shí)器到期后執(zhí)行函數(shù)。類(lèi)型為string則打印Error信息,不進(jìn)行其他處理。

delay

number

延遲的毫秒數(shù),函數(shù)的調(diào)用會(huì)在該延遲之后發(fā)生。如果省略該參數(shù),delay取默認(rèn)值0,意味著“馬上”執(zhí)行,或盡快執(zhí)行。

...args

any[]

附加參數(shù),一旦定時(shí)器到期,它們會(huì)作為參數(shù)傳遞給handler。

返回值:

類(lèi)型

說(shuō)明

number

該定時(shí)器的ID,為整數(shù)。

示例:
  1. let timeoutID = setTimeout(function() {
  2. console.log('do after 1s delay.');
  3. }, 1000);
  4. clearTimeout(timeoutID);

clearTimeout

clearTimeout(timeoutID: number): void

可取消通過(guò)調(diào)用setTimeout()建立的定時(shí)器。

系統(tǒng)能力: SystemCapability.ArkUI.ArkUI.Full

參數(shù):

參數(shù)名

類(lèi)型

必填

說(shuō)明

timeoutID

number

要取消定時(shí)器的ID, 是由setTimeout()返回的。如果省略該參數(shù),則不取消任何定時(shí)任務(wù),無(wú)任何處理。

示例
  1. let timeoutID = setTimeout(function() {
  2. console.log('do after 1s delay.');
  3. }, 1000);
  4. clearTimeout(timeoutID);

setInterval

setInterval(handler: Function | string, delay: number, ...arguments: any[]): number

重復(fù)調(diào)用一個(gè)函數(shù),在每次調(diào)用之間具有固定的時(shí)間延遲。

刪除該定時(shí)器需手動(dòng)調(diào)用clearInterval接口。

系統(tǒng)能力: SystemCapability.ArkUI.ArkUI.Full

參數(shù):

參數(shù)名

類(lèi)型

必填

說(shuō)明

handler

Function | string

要重復(fù)調(diào)用的函數(shù)。類(lèi)型為string則打印Error信息,不進(jìn)行其他處理。

delay

number

延遲的毫秒數(shù),函數(shù)的調(diào)用會(huì)在該延遲之后發(fā)生。

...args

any[]

附加參數(shù),一旦定時(shí)器到期,他們會(huì)作為參數(shù)傳遞給handler。

返回值:

類(lèi)型

說(shuō)明

number

該定時(shí)器的ID,為整數(shù)。

示例
  1. setInterval(function() {
  2. console.log('do every 1s.');
  3. }, 1000);

clearInterval

clearInterval(intervalID?: number): void

可取消通過(guò)setInterval()設(shè)置的重復(fù)定時(shí)任務(wù)。

系統(tǒng)能力: SystemCapability.ArkUI.ArkUI.Full

參數(shù):

參數(shù)名

類(lèi)型

必填

說(shuō)明

intervalID

number

要取消的重復(fù)定時(shí)器的ID,是由 setInterval() 返回的。如果省略該參數(shù),則不取消任何定時(shí)任務(wù),無(wú)任何處理。

示例:
  1. let intervalID = setInterval(function() {
  2. console.log('do every 1s.');
  3. }, 1000);
  4. clearInterval(intervalID);
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)