Javascript嵌套循环匹配,组合,替换

时间:2015-03-26 20:26:57

标签: javascript arrays loops nested-loops

我有两个数组:

arr1 = ["a", "b", "c", "d", "e", "f", "g"]
arr2 = ["z", "q", "a", "v", "y", "e"]

我想生成一个结果数组:

results = ["aa", "b", "c", "d", "ee", "f", "g"]

基本上我想在arr1中按顺序将结果数组推入结果数组中,如果它与匹配键有匹配,如果还没有列出arr1中的项目。因此结果数组是arr1中的每个项目,但如果它匹配obj 2中的任何位置,则使用匹配键并将其组合。注意:结果[0]是arr1 [0] + arr2 [2]而不是arr1 [0] + arr1 [0]

我的实际问题更复杂,但我认为这是我能推断的最佳简化。我正在寻找一个可以产生这个的嵌套循环(或任何有效的方法)。任何帮助将不胜感激,我知道我很接近,但到目前为止我还没有能够产生这一点,并且一直在试着把我的头发拉出来。谢谢!

1 个答案:

答案 0 :(得分:0)

通过Juhana回答:

var results = arr1.map(function (val) { 
  return val + (arr2.indexOf(val) > -1 ? val : ''); 
});