当前位置: 首页 > 面试题库 >

在JavaScript中获得两个数组的并集

丁景山
2023-03-14
问题内容

假设我有个数组,[34, 35, 45, 48, 49]另一个数组[48, 55]。我如何得到结果数组[34, 35, 45, 48, 49, 55]


问题答案:

如果您不需要保留订单,并考虑45"45"保持一致:

function union_arrays (x, y) {

  var obj = {};

  for (var i = x.length-1; i >= 0; -- i)

     obj[x[i]] = x[i];

  for (var i = y.length-1; i >= 0; -- i)

     obj[y[i]] = y[i];

  var res = []

  for (var k in obj) {

    if (obj.hasOwnProperty(k))  // <-- optional

      res.push(obj[k]);

  }

  return res;

}



console.log(union_arrays([34,35,45,48,49], [44,55]));


 类似资料:
  • 问题内容: 我有两个这样的结果集: 我需要的最终结果是这些数组之间的差异–最终结果应如下所示: 是否可以在JavaScript中执行类似的操作? 问题答案: 仅使用本机JS,类似的方法将起作用:

  • 有两个数组: 我是如何做到的: 我想用RxJ或其他。 如果值不是数字,例如Object。

  • Java中的两个一维数组/向量可以这样相加: Java中的两个二维数组/矩阵可以这样添加: 这两个函数都要求数组具有相同的大小,以避免。 应该有一种方法可以使用递归添加两个未知维度的数组。 例如,下面的代码使用假设函数 应该输出 现在我想知道如何实现这个函数。 我从以下伪代码开始: 可以使用java.lang.reflect.Array中的-方法创建新数组 可以这样进行循环: 但我遇到了很多运行时

  • 问题内容: 我有两个像 我希望它们合并成单个数组 问题答案: 您需要该方法。

  • 问题内容: 我有两个JavaScript数组: 我希望输出为: 输出数组应删除重复的单词。 如何在JavaScript中合并两个数组,以使每个数组中的唯一项按插入原始数组中的相同顺序获得? 问题答案: 仅合并数组(不删除重复项) ES5版本使用: ES6版本使用解构 由于没有“内置”方式来删除重复项ECMA-262实际上有这样做的好处),因此我们必须手动进行: 然后,使用它: 这也将保留数组的顺序