我正在研究async JS并尝试这个:
function printOne() {
console.log(1);
}
function printTwo() {
console.log(2);
}
setTimeout(printOne, 1000);
setTimeout(printTwo, 0);
作为回报,我有这样的事情:
< 99350
2
1
问题是:什么是99350是什么意思?我知道这是时间问题,但为什么控制台会把它归还给我?
答案 0 :(得分:3)
只是timeoutID
,setTimeout
返回的
timeoutID
是一个数字非零值,用于标识通过调用setTimeout()
创建的计时器;此值可以传递给WindowOrWorkerGlobalScope.clearTimeout()
以取消超时。了解
setTimeout()
和setInterval()
共享同一个ID池可能会有所帮助,clearTimeout()
和clearInterval()
在技术上可以互换使用。但是,为了清楚起见,您应该尝试始终匹配它们,以避免在维护代码时出现混淆。
function printOne() {
console.log('printOne', 1);
}
function printTwo() {
console.log('printTwo', 2);
}
console.log('timeoutID', setTimeout(printOne, 1000));
console.log('timeoutID', setTimeout(printTwo, 0));