Node.js – Timeout-hasRef() 和 Timeout-refresh() 方法
该超时对象在内部创建并从返回setTimeout()和setInterval()方法。您可以使用此对象并将其传递给clearTimeout()或clearInterval()方法以取消计划的操作
以下是可用于控制默认行为的超时类引用对象
1. timeout.hasRef()
只要其值为 True,此方法就会使节点事件循环保持活动状态。
语法
timeout.hasRef()
2. timeout.refresh()
此方法将计时器的开始时间刷新为当前时间,并将计时器重新安排到其回调,其中先前指定的持续时间将调整为当前时间。此方法有助于在没有新 JS 对象的情况下刷新计时器。
语法
timeout.refresh()
示例
创建一个名为“timeout.js”的文件并复制以下代码片段。创建文件后,使用命令“node timeout.js”运行此代码。
// 超时类演示示例输出结果// 使用 setTimeout() 方法设置超时
var Timeout = setTimeout(function fun() {
console.log("1. Setting Timeout for 100ms", 100);
});
// 检查 timeout.hasRef() 对象
console.log("2. ", Timeout.hasRef());
// 刷新计时器
console.log("3. ", Timeout.refresh());
// 清除 setInterval 超时
clearTimeout(Timeout);
console.log("4. Timeout is cleared !");
2. true3. Timeout {
_called: false,
_idleTimeout: 1,
_idlePrev: [TimersList],
_idleNext: [TimersList],
_idleStart: 382,
_onTimeout: [Function: alfa],
_timerArgs: undefined,
_repeat: null,
_destroyed: false,
[Symbol(unrefed)]: false,
[Symbol(asyncId)]: 5,
[Symbol(triggerId)]: 1 }
4. Timeout is cleared !
以上是 Node.js – Timeout-hasRef() 和 Timeout-refresh() 方法 的全部内容, 来源链接: utcz.com/z/362144.html