Javascript 异步/等待和承诺的错误处理,n²;射中你自己脚上的方法
如何使用此代码在同一函数中发送不同的错误:Javascript 异步/等待和承诺的错误处理,n²;射中你自己脚上的方法,javascript,Javascript,如何使用此代码在同一函数中发送不同的错误: function fails3() { return new Promise((resolve, reject) => { setTimeout(function() { throw new Error(); }, 100); }); } 您可以使用“拒绝”并传递您想要传递的内容: const myError = { error1: 'Error found', e
function fails3() {
return new Promise((resolve, reject) => {
setTimeout(function() {
throw new Error();
}, 100);
});
}
您可以使用“拒绝”并传递您想要传递的内容:
const myError = {
error1: 'Error found',
error2: 'Timeout Reached'
}
function fails3() {
return new Promise((resolve, reject) => {
setTimeout(function() {
reject(myError);
}, 100);
});
}
一旦承诺被拒绝,因为已达到超时,将抛出错误,您可以通过以下方式捕获它:
function myFunction() {
fails3()
.catch((error) => console.log(error.error1)); // Handle error
}
或者如果您喜欢(谁不喜欢)异步/等待
async function myFunction() {
try {
await fails3();
} catch(e) {
console.log(e.error2); // Handle error
}
}
将错误对象传递给
reject
函数以拒绝承诺。不确定这是否是一个选项,但您可以创建自己类型的错误,其中包含您想要的任何内容