作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我之前在 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/
我是一名优秀的程序员,十分优秀!