Я просматриваю массив и пытаюсь найти, где сумма двух элементов равна 10.
Я нахожу правильные пары совпадений ... но для двух из них порядок не сохраняется при их добавлении.
Я ожидаю получить
[ [9,1], [6,4], [3,7], [7,3], [6,4], [1,9] ]
, но получаю
[ [9,1], [6,4], [3,7], [3,7], [6,4], [9,1] ]
i.e. => ^^^ ^^^
are different
Почему две указанные пары имеют обратный порядок?
newNums = [];
nums.forEach(num1 => {
nums.forEach(num2 => {
num1Position = nums.indexOf(num1);
num2Position = nums.indexOf(num2);
if (num1 + num2 === 10 && num2Position > num1Position ) {
newNums.push([num1, num2]);
}
})
})
return newNums;
}
result = sumTwoNumbersIsTen([9,6,3,7,3,6,4,2,0,1,9])
console.log(result); // should be [ [9,1], [6,4], [3,7], [7,3], [6,4], [1,9] ]
// but I get [ [9,1], [6,4], [3,7], [3,7], [6,4], [9,1] ]
//