0

首先,这是虚拟的承诺功能:

const dummy_server = () => new Promise(resolve => {
  setTimeout(() => {resolve('success')}, 3000)
})

方案 1 如下:

const result1 = await dummy_server()
const result2 = await dummy_server()
const result3 = await dummy_server()
console.log(result1, result2, result3)

预期:将在 3 * 3 = 9 秒后打印 'success' 'success' 'success'
实际:是的,我的想法

方案 2 如下:

const results = await Promise.all([dummy_server(), dummy_server(), dummy_server()])
console.log(results , 'hi')

预期:将在 3 * 1 = 3 秒后打印 ['success', 'success', 'success']
实际:不......它会立即打印!结果是正确的,但为什么不花时间?!?!

这对我来说很棘手......为什么?谁能解释一下……???

4

0 回答 0