要测试从异步函数返回承诺,在8s之后低于代码片段1的输出结果,但是代码片段2几乎是瞬间,唯一的区别是setTimeout中的箭头功能:
代码段1:
const add10 = (num) => new Promise((resolve, reject) => { setTimeout(() =>
resolve(num*2),8000)
})
const add5 = async (num) => { return await add10(num) }
add5(2).then((data)=>{ console.log(data) })
代码段2:
const add10 = (num) => new Promise((resolve, reject) => { setTimeout(resolve(num*2),8000)
})
const add5 = async (num) => { return await add10(num) }
add5(2).then((data)=>{ console.log(data) })
能请你解释一下吗?我只想了解为什么我必须在回调中添加resolve(已经是一个函数)? 谢谢