问答题856/1593【Promise第27题】下面代码的输出是什么?

1 2function runAsync(x) { 3 const p = new Promise(r => 4 setTimeout(() => r(x, console.log(x)), 1000) 5 ); 6 return p; 7} 8function runReject(x) { 9 const p = new Promise((res, rej) => 10 setTimeout(() => rej(`Error: ${x}`, console.log(x)), 1000 * x) 11 ); 12 return p; 13} 14Promise.race([runReject(0), runAsync(1), runAsync(2), runAsync(3)]) 15 .then(res => console.log("result: ", res)) 16 .catch(err => console.log(err)); 17
难度:
2022-01-09 创建

参考答案:

解析

.race()的作用也是接收一组异步任务,然后并行执行异步任务,只保留取第一个执行完成的异步操作的结果,其他的方法仍在执行,不过执行结果会被抛弃。

结果

0
'Error: 0'
1
2
3

最近更新时间:2022-01-09

赞赏支持

预览

题库维护不易,您的支持就是我们最大的动力!