Timer (定时器)

本模块提供基础的定时器能力,支持按照指定的时间执行对应函数。

说明:

本模块首批接口从API version 3开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

setTimeout

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

设置一个定时器,该定时器在定时器到期后执行一个函数。

系统能力: SystemCapability.ArkUI.ArkUI.Full

参数:

参数名 类型 必填 说明
handler Function | string 定时器到期后执行函数。
delay number 延迟的毫秒数,函数的调用会在该延迟之后发生。如果省略该参数,delay取默认值0,意味着“马上”执行,或尽快执行。
...arguments Array<any> 附加参数,一旦定时器到期,它们会作为参数传递给handler。

返回值:

类型 说明
number timeout定时器的ID。

示例:

export default {    
  setTimeOut() {        
    var timeoutID = setTimeout(function() {            
      console.log('delay 1s');
    }, 1000);    
  }
}

clearTimeout

clearTimeout(timeoutID: number): void

取消了先前通过调用setTimeout()建立的定时器。

系统能力: SystemCapability.ArkUI.ArkUI.Full

参数:

参数名 类型 必填 说明
timeoutID number 要取消定时器的ID, 是由setTimeout()返回的。

示例:

export default {    
  clearTimeOut() {        
    var timeoutID = setTimeout(function() {            
      console.log('do after 1s delay.');        
    }, 1000);        
    clearTimeout(timeoutID);    
  }
}

setInterval

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

重复调用一个函数,在每次调用之间具有固定的时间延迟。

系统能力: SystemCapability.ArkUI.ArkUI.Full

参数:

参数名 类型 必填 说明
handler Function | string 要重复调用的函数。
delay number 延迟的毫秒数(一秒等于1000毫秒),函数的调用会在该延迟之后发生。
...arguments Array<any> 附加参数,一旦定时器到期,他们会作为参数传递给handler。

返回值:

类型 说明
number intervalID重复定时器的ID。

示例:

export default {    
  setInterval() {        
    var intervalID = setInterval(function() {            
      console.log('do very 1s.');        
    }, 1000);    
  }
}

clearInterval

clearInterval(intervalID: number): void

可取消先前通过setInterval()设置的重复定时任务。

系统能力: SystemCapability.ArkUI.ArkUI.Full

参数:

参数名 类型 必填 说明
intervalID number 要取消的重复定时器的ID,是由 setInterval() 返回的。

示例:

export default {    
  clearInterval() {        
    var intervalID = setInterval(function() {
      console.log('do very 1s.');
    }, 1000);
    clearInterval(intervalID);
  }
}