定時器

2024-01-23 17:31 更新

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

說明

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

setTimeout

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

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

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

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

參數(shù):

參數(shù)名

類型

必填

說明

handler

Function | string

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

delay

number

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

...args

any[]

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

返回值:

類型

說明

number

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

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

clearTimeout

clearTimeout(timeoutID: number): void

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

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

參數(shù):

參數(shù)名

類型

必填

說明

timeoutID

number

要取消定時器的ID, 是由setTimeout()返回的。如果省略該參數(shù),則不取消任何定時任務(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)用一個函數(shù),在每次調(diào)用之間具有固定的時間延遲。

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

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

參數(shù):

參數(shù)名

類型

必填

說明

handler

Function | string

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

delay

number

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

...args

any[]

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

返回值:

類型

說明

number

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

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

clearInterval

clearInterval(intervalID?: number): void

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

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

參數(shù):

參數(shù)名

類型

必填

說明

intervalID

number

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

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

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號