【问题标题】:console.log returns [Object] when object is in multiple other objects当对象在多个其他对象中时,console.log 返回 [Object]
【发布时间】:2025-12-27 17:30:12
【问题描述】:

当我有很多对象在一起并且我在 cmd 中使用 nodejs 运行它时,它说的是 [Object] 而不是对象的实际内容。

这是我的命令提示符的示例

myObject = {
  '698045139763069009':{ users: { '560433156377804828': {name: "mark", age: "28"}},info: {} }
}
console.log(myObject);

代码在这里^^^

数组也会发生同样的事情

myObject = {
  '698045139763069009':{ users: { '560433156377804828': ["mark", 28]},info: {} }
}
console.log(myObject);

还有截图^^^

帮助将不胜感激! 谢谢

【问题讨论】:

  • 请出示您的代码
  • 使用console.log(JSON.stringify(obj),,4)
  • @brk 进行了编辑

标签: javascript node.js json object javascript-objects


【解决方案1】:

看起来您的控制台不打印嵌套对象。

console.log(someObject) 更改为console.log(JSON.stringify(someObject))

请注意,如果对象是循环的/具有循环引用,则会出错。

【讨论】:

  • 有道理,因为我仍然可以检索和输入数据。我也可以console.log(myObject.users) 看看所有的数据都还在
  • console.log(myObject.users) 可能无法打印完整的 users 对象,如果它也有嵌套,那么最好这样做 stringify
【解决方案2】:

这是为了使输出更具可读性。

如果要打印整个对象,请使用 util.inspect() as described here 或使用 JSON.stringify()

【讨论】:

    【解决方案3】:

    原来我的控制台不打印嵌套数组或对象。感谢大家的帮助!

    这是为了在处理大量嵌套数组和对象时使其更具可读性。

    【讨论】: