如何在javascript中的对象列表中添加键值

时间:2018-01-24 10:23:34

标签: javascript arrays add

初学者需要建议。 如何从对象列表中添加值 如果我有



var arr = [{key1: value1}, {key2: value2}];




我想在其中添加值1 +值2并将其存储在另一个变量中。 编辑:给定值1,值2为数字。数组中可以有1-4个对象。

3 个答案:

答案 0 :(得分:0)

如果你有这样的属性名称

var arr = [{key1: 1}, {key1: 2}, {key1: 2}, {key1: 2}];
var sum = 0;
for(var i = 0; i < arr.length; i++)
  sum += arr[i].key1;
  
console.log(sum);

如果不是这样的话

var arr = [{key1: 1}, {key1: 2}, {key3: 2}, {key4: 2}];
var sum = 0;
for(var i = 0; i < arr.length; i++)
  sum += Object.values(arr[i])[0];
  
console.log(sum);

答案 1 :(得分:0)

如果你想推入相同的数组,你可以这样做

var arr = [{
  key1: 1
}, {
  key2: 3
}];

var sum = 0; // Create a variable to store the sum
// loop over it and get each object
arr.forEach(function(item) {
  // again using for ..in loop since key name is different
  for (var keys in item) {
    sum += item[keys]
  }
})
// pushing the value to the array
arr.push({
  key3: sum
});

console.log(arr)

答案 2 :(得分:0)

要访问数组元素,您需要使用索引,然后您可以使用键来访问vaues

arr[0]将返回数组的第一个对象。

arr[0].key1

arr[0]['key1']将返回数组第一个元素中key1的值。

您的代码将是这样的

value3 = arr[0].key1 + arr[1].key2
arr.push({key3: value3})

或者您需要为所有元素中的迭代创建循环。