想象一下你有这个:
fetch('www.nonexistingwebpage.com', mySettings)
.then(doTheThing);
.catch(function(error){
console.log(error);
// returns "SyntaxError: Unexpected token < in JSON at position 0"
// Or "TypeError: Failed to fetch"
});
这很好,但是从技术上讲我不能使用。我宁愿从错误对象中获取更多信息,而不仅仅是错误字符串,以便我能够正确处理它。
经过一些搜索,我发现error
对象的一个属性是message
,所以我可以做error.message
。但是,error.type
和error.status
未定义。我正在寻找用于处理的更多信息,但似乎找不到。
关于错误对象的选项似乎绝对有0个文档,而且我似乎找不到任何相关信息,所以我想知道是否还有其他人确切知道我可以调用哪些属性?
答案 0 :(得分:0)
捕获错误时,通常是一个Error对象(在大多数语言中通常称为Exception)。
处理特定异常的最佳方法不是通过其属性,而是通过其类型。例如,您遇到语法错误,可以使用以下命令进行检查:
if (err instanceof SyntaxError) {
// Do something specifically for syntax errors
}