有时我从catch(err => console.log(err))
中触发了这样的错误:
{ [Error: SQLITE_ERROR: no such table: table_name] errno: 1, code: 'SQLITE_ERROR' }
它看起来像一个对象,是的,但是为什么在它的开头有一个数组?
如何获得该数组?
我想得到该错误消息:
Error: SQLITE_ERROR: no such table: table_name
决定下一步做什么。
我认为错误消息是键名的一部分,所以我尝试了:
Object.keys(err);
但是返回这样的数组:
["errno", "code"]
如何获得该错误消息?
无论抛出什么错误,都不抛出简单的字符串。尝试使用其他日志记录方法可以更好地了解返回的内容,因为console.log
可能无法在记录日志时为您提供错误的正确值。
尝试使用console.log(JSON.parse(JSON.stringify(obj)))
,然后查看返回的内容。可能您需要执行console.log(error.response.message)
之类的操作或类似的操作来获得可以使用的更有用的字符串。