Вы можете использовать вложенные map()
:
var twoSum = (nums, target)=> {
// map trough list for first number
nums.map(
(val1, index1)=>
{
// map through list again for second number to compare to number returned from first map at each instance
nums.map((val2, index2) =>
{
// Ensure that index1 and index2 are not the same before you compare
if(index1 != index2 && (val1 + val2 === target))
{
alert([index1, index2]);
return [index1, index2];
}
});
}
);
}
twoSum([3,5,3,7,2], 9) //It should return [3, 4] since 7 + 2 = 9
Примечание: помните, что это не будет l oop по всем пунктам, если совпадение не было найдено. Как только совпадение найдено, функция возвращается и завершается.