【问题标题】:Is there a good way to merge arrays by index? [duplicate]有没有按索引合并数组的好方法? [复制]
【发布时间】:2018-10-26 22:38:59
【问题描述】:

给定两个任意数组 a 和 b,如何最好地合并它们以获得以下结果:

var a = [1, 3, 5, 7];
var b = [2, 4, 6];
var c = merge(a,b); // c = [1, 2, 3, 4, 5, 6, 7]

var a = ["string1", "string2"];
var b = ["string3"];
var c = merge(a,b); // c = ["string1", "string3", "string2"]

【问题讨论】:

  • “按索引”是什么意思?
  • 我怀疑,这些值只是显示结果中位置的占位符。在这种情况下,恐怕您必须“手动”实现一些迭代。

标签: javascript


【解决方案1】:

This answer to a similar question is probably what you're looking for..

var c = a.reduce(function(arr, v, i) {
                          return arr.concat(v, b[i]); 
                       }, []);

The previous author also provided a demo here.

【讨论】:

  • 虽然这可能会回答问题,但请不要只是转发其他用户的答案。如果问题是重复的,请投票关闭它,或者如果您无法投票,请在链接中留下评论。
  • 我考虑将其标记为重复,但其他用户的问题略有不同(他们特别想要一个 jQuery 解决方案),而 OP 似乎正在寻找一个纯 JS 解决方案。由于另一个问题确实有我认为 OP 正在寻找的答案,但该答案没有被标记,我在页面下方链接了直接回答问题的答案(同时也包括源)。我感谢作者并将他们的帖子和演示链接在一起——绝不假装这是我自己的作品。
猜你喜欢
  • 1970-01-01
  • 2014-05-01
  • 1970-01-01
  • 2022-01-23
  • 2011-03-28
  • 1970-01-01
  • 1970-01-01
  • 2020-12-07
  • 2019-11-29
相关资源
最近更新 更多