timersPromises.setInterval([delay[, value[, options]]])
返回一个异步迭代器,该迭代器以 delay 毫秒的间隔生成值。
🌐 Returns an async iterator that generates values in an interval of delay ms.
delay<number> 每次迭代之间等待的毫秒数。 默认值:1。value<any> 迭代器返回的一个值。options<Object>ref<boolean> 设置为false表示计划的迭代间Timeout不需要保持 Node.js 事件循环处于活动状态。 默认值:true。signal<AbortSignal> 可选的AbortSignal,可用于取消操作之间已安排的Timeout。
import {
setInterval,
} from 'timers/promises';
const interval = 100;
for await (const startTime of setInterval(interval, Date.now())) {
const now = Date.now();
console.log(now);
if ((now - startTime) > 1000)
break;
}
console.log(Date.now());const {
setInterval,
} = require('node:timers/promises');
const interval = 100;
(async function() {
for await (const startTime of setInterval(interval, Date.now())) {
const now = Date.now();
console.log(now);
if ((now - startTime) > 1000)
break;
}
console.log(Date.now());
})();