【问题标题】:Add two json object data in javascript [duplicate]在javascript中添加两个json对象数据[重复]
【发布时间】:2014-07-06 10:54:13
【问题描述】:

我想添加两个具有这样结构的 JSON 对象(它有更多数据,我在这里忽略它们):

{ "total_count":100 , "types":20 , { "a" : 5 , "b" : 6 }}

{"total_count" : 1 , { "a" : 2 } }

我想在 node.js 中添加这些对象以获得以下对象:

 { "total_count":101 , "types":20 , { "a" : 7 , "b" : 6 }}

我使用具有 $inc 函数的 mongodb,它将当前 json 添加到 db 中现有的 json 并减少负载和存储负载。我有兴趣在 nodejs 中找到一种处理此操作的方法。我应该怎么做(我不想手动操作。相反我喜欢使用现有功能)?

【问题讨论】:

  • 你试过什么? SO 不是为您提供代码,而是在您遇到自己的代码时为您提供帮助。
  • 我建议编写一些将所有值相加的递归函数。你需要for(var i in object) 语法。
  • 好吧,这不是重复的 IMO,因为 OP 不仅想将两个对象盲目地合并在一起,还想对数据本身进行一些转换,因此定制的功能会做得更多感觉。 OP 应该添加更多细节,例如这是一个通用请求还是针对该特定对象属性的特定问题。

标签: javascript json node.js


【解决方案1】:

像这样?你的 json 结构不太正确,所以我加了 x。

object1 = {"total_count":100 , "types":20 , "x": { "a" : 5 , "b" : 6 }};

object2 = {"total_count" : 1 , "x":{ "a" : 2 } };

object1.total_count += object2.total_count;
object1.x.a += object2.x.a;

【讨论】:

  • 这只是部分回答了这个问题:如果对象 2 包含 b 的值怎么办?你应该让它更通用。
  • 我只展示了我的对象的一部分
  • Zim84,然后加 b
猜你喜欢
  • 2015-07-21
  • 2019-10-15
  • 1970-01-01
  • 1970-01-01
  • 2015-09-18
  • 2019-01-16
  • 1970-01-01
  • 2017-07-15
  • 2020-05-14
相关资源
最近更新 更多