Javascript嵌套循环匹配、组合、替换
我有两个阵列:Javascript嵌套循环匹配、组合、替换,javascript,arrays,loops,nested-loops,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中的任何位置匹配,则取匹配键并
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]
我的实际问题更复杂,但我认为这是我能推断出的最好的简化。我正在寻找一个嵌套循环(或任何可行的方法)来产生这个结果。任何帮助都将不胜感激,我知道我很接近,但到目前为止,我还没有能够制作出这个,并且一直在努力。谢谢大家! 回答:
我知道我很接近,但到目前为止,我还没能制作出这个。你能告诉我们到目前为止你有什么吗?学究,但是如果
arr1[0]
和arr2[2]
是一样的,那么你加在一起得到什么结果并不重要。var results=arr1.map(function(val){return val+(arr2.indexOf(val)>-1?val:“;”
(如Juhana的回答所示……但不清楚如果arr2
包含多个“a”
,或者如果可能的话,该怎么办。)我没有将其作为答案发布,因为我感觉实际问题并不是那么简单。谢谢!我不知道map方法,我想这就是我需要的,如果我能让它工作,我会尽快回复
var results = arr1.map(function (val) {
return val + (arr2.indexOf(val) > -1 ? val : '');
});