gpt4 book ai didi

javascript - 将递归 .then 更改为 async/await

转载 作者:太空宇宙 更新时间:2023-11-04 15:35:29 27 4
gpt4 key购买 nike

我有像这样的js递归fn

const recur = () => {
fetchSomething().then( res => {
if(typeof res.data == 'undefined'){ recur() }
else { console.log(res.data) }
})
}
recur()

我可以将上面的代码应用到 Async/Await 风格吗?

最佳答案

torazaburorobertklep 都正确地建议使用一段时间来实现这一目标。我将在此处添加评论,以免错过它们,因为它们提出了很好的观点。

IMHO the non-recursive solution should be the preferred one. The nature of promises and then sort of requires the pseudo-recursive solution, but one of the great advantages of await is that it allows us to write asynchronous code in synchronous-like fashion.

<小时/>
const recur = async () => {
const res = await fetchSomething();

if (!res.data)
recur();
else
console.log(res.data);
}

类似的东西应该可以解决问题。

Demo

关于javascript - 将递归 .then 更改为 async/await,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44409177/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com