NodeJS / Javascript:如何检测错误对象的返回值?

hard_working_ant

我有一个函数,可能会返回一些对象或可能会返回自定义错误对象。我无法检测到错误对象类型。

我已经尝试了builder.match(/ Error / i)或试图在原型的Object.keys上工作,但没有任何效果。以下是代码?

function x() {
    try {
        ...
    } catch {e} {
       let err = new Error('caught error')
       return err
    }
    return someObject
}

//the following gives: TypeError: err.constructor.match is not a function
if (x().constructor.match(/Error/i)) {
   //log error
}
//do something

任何想法如何检测输出错误类型?

维汉舒

您可以检查返回的对象是否为instanceof错误,如下所示

let y = x();
if(y instanceof Error) {
  // returned object is error
} else {
 //returned object is not error
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章