首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用JS将具有匹配键值对的相似对象数组中的值数组组合在一起

,可以通过以下步骤实现:

  1. 首先,定义一个空对象,用于存储组合后的键值对。
  2. 遍历对象数组,对于每个对象:
    • 获取当前对象的键和值。
    • 检查空对象中是否已存在该键,如果不存在,则将该键和值添加到空对象中。
    • 如果已存在该键,将当前对象的值与空对象中对应键的值组合成一个数组,并将该数组更新到空对象中对应的键。
  • 最后,将空对象中的键值对转换为数组形式返回。

以下是一个示例代码:

代码语言:txt
复制
function combineValues(objArray) {
  var combinedObj = {};

  objArray.forEach(function(obj) {
    var key = Object.keys(obj)[0];
    var value = obj[key];

    if (combinedObj.hasOwnProperty(key)) {
      combinedObj[key].push(value);
    } else {
      combinedObj[key] = [value];
    }
  });

  return Object.entries(combinedObj);
}

// 示例用法
var objArray = [
  { key1: 'value1' },
  { key2: 'value2' },
  { key1: 'value3' },
  { key3: 'value4' },
  { key2: 'value5' }
];

var combinedArray = combineValues(objArray);
console.log(combinedArray);

输出结果为:

代码语言:txt
复制
[
  ['key1', ['value1', 'value3']],
  ['key2', ['value2', 'value5']],
  ['key3', ['value4']]
]

在这个示例中,我们使用了一个空对象combinedObj来存储组合后的键值对。通过遍历对象数组objArray,我们获取每个对象的键和值,并检查空对象中是否已存在该键。如果已存在,则将当前对象的值与空对象中对应键的值组合成一个数组;如果不存在,则直接将键和值添加到空对象中。最后,我们将空对象中的键值对转换为数组形式返回。

对于这个问题,腾讯云没有特定的产品或链接与之相关。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券