使用 JSON.stringify 将对象转换为字符串显示空对象 [重复]

Posted

技术标签:

【中文标题】使用 JSON.stringify 将对象转换为字符串显示空对象 [重复]【英文标题】:convert object to string using JSON.stringify show empty object [duplicate] 【发布时间】:2018-12-09 18:49:00 【问题描述】:

我正在尝试使用 JSON.stringify 将对象转换为字符串,但我得到了空对象

console.log('typeof',typeof e,' e value is',e, 'JSON stringify is',JSON.stringify(e))

我尝试打印时的错误消息

typeof object e value is Error: Error: 发生网络错误(如超时、连接中断或无法访问主机)。 JSON 字符串化是

【问题讨论】:

@ManuallyOverridden console.log 是可变参数——您可以传递多个对象,这些对象由, 分隔。 看起来e 是一个错误对象。在节点中,将错误字符串化会导致。不确定您是如何运行代码的。 @ManuallyOverridden 即使我确实让 a = JSON.stringify(e) 并打印一个我得到空对象.. @Mark_M 如何打印错误对象?我想用它串起来并在客户端显示 看到这个答案***.com/questions/18391212/… 【参考方案1】:

您的对象e 是一个错误对象。当您尝试字符串化时,您会在 chrome 和 node.js 中获得。 Safari 会显示更多信息。

let e = new Error("hello")
console.log(typeof e)
console.log(JSON.stringify(e))

您可以通过以下方式测试错误:

let e = new Error("Some error happened")
if (e instanceof Error) 
  console.log("Error:", e.message)
 

【讨论】:

以上是关于使用 JSON.stringify 将对象转换为字符串显示空对象 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

使用 JSON.stringify 将冒号转换为 unicode

JS中JSON.stringify()方法,将js对象转换成字符串,传入服务器

JSON.stringify 应用

JSON.stringify 将 Infinity 转换为 null

JSON.stringify 将 Infinity 转换为 null

JSON.stringify与jQuery.parseJSON