gpt4 book ai didi

javascript - 有没有什么办法可以在 javascript 中等待和捕获?

转载 作者:行者123 更新时间:2023-12-05 03:33:02 25 4
gpt4 key购买 nike

我之前在 Kotlin 中使用过挂起功能,因此对 javascript 中的 async/await 有点陌生。有没有什么方法可以等待并捕获 js 中的错误(如果有的话)。 (不写 try catch)。如果不是,正确的方法是什么。

例如考虑这个片段,异步函数a:

let a = async () => {
// does io and returns result
}

现在,考虑一个调用a 的函数b。我可以用这种干净的方式写吗:

let a = async () => {
const result_of_a = (await a()).catch(() => { // handle error })
// work with `result_of_a`
}

而不是

let a = async () => {
var result_of_a = null
try {
result_of_a = await a()
} catch (e) {

}
// work with `result_of_a`
}

上面的子程序还有其他漂亮的写法吗

最佳答案

我不相信你可以。如果您认为 .catch 更简洁,也许您应该只使用 promise 语法。我个人根据上下文使用两者。但由于 promise hell,我更喜欢异步

let asyncFn = async () => {
const result = a().then(...).catch(...)
}

关于javascript - 有没有什么办法可以在 javascript 中等待和捕获?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70390343/

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