Javascript 我需要合并对象。它们都有相同的键,但数值不同。我需要得到每个键的值的总和

Javascript 我需要合并对象。它们都有相同的键,但数值不同。我需要得到每个键的值的总和,javascript,object,Javascript,Object,对JS和编程一般来说都是新手。我在某某和其他资源上尝试了许多解决方案,但似乎无法解决这个问题。我有20个或更多代表用户“投票”的对象。根据用户输入的不同,它们都具有相同的键和不同的值。我需要通过对不同的值求和来“统计投票”,并返回单个对象 例如: { "Seattle" : "1", "Chicago" : "2", "New York" : "3" } { "Chicago" : "1", "New York" : "2", "Seattle" : "3" } {

对JS和编程一般来说都是新手。我在某某和其他资源上尝试了许多解决方案,但似乎无法解决这个问题。我有20个或更多代表用户“投票”的对象。根据用户输入的不同,它们都具有相同的键和不同的值。我需要通过对不同的值求和来“统计投票”,并返回单个对象

例如:

{
  "Seattle" : "1",
  "Chicago" : "2",
  "New York" : "3"
}

{
  "Chicago" : "1",
  "New York" : "2",
  "Seattle" : "3"
}

{
  "New York" : "1",
  "Chicago" : "2",
  "Seattle" : "3"
}
我想把上面的三个物体蒸馏成这样:

{
  "New York" : "6",
  "Seattle" : "7",
  "Chicago" : "5"
}

如果你能给我指出正确的方向,我将不胜感激

假设您的投票在一个数组中,您可以将其放入单个对象中:

const投票=[
{
“西雅图”:“1”,
“芝加哥”:“2”,
“纽约”:“3”
},
{
“芝加哥”:“1”,
“纽约”:“2”,
“西雅图”:“3”
},
{
“纽约”:“1”,
“芝加哥”:“2”,
“西雅图”:“3”
}
];
常量计数=选票。减少((a,e)=>{
用于(e中的常数p){
a[p]=a[p]+(+e[p])| |+e[p];
}
返回a;
}, {})

控制台日志(理货)
另一个带有
reduce/keys/map
的选项,它的功能更强大一些看起来:

const objs=[{
“西雅图”:“1”,
“芝加哥”:“2”,
“纽约”:“3”
},
{
“芝加哥”:“1”,
“纽约”:“2”,
“西雅图”:“3”
},
{
“纽约”:“1”,
“芝加哥”:“2”,
“西雅图”:“3”
}
]
var result=objs.reduce((r,c)=>Object.keys(r.map)((x)=>r[x]=+r[x]+(+c[x])和&r)

console.log(result)
您的对象是否在数组中?