Всем привет. Нижеприведенный код под последним спойлером (основной блок кода) прогоняет массив с цифрами и выводит определенное число. Суть вопроса заключается в том, что есть массив-родитель
spoilerconst batch = [ valid1,valid2,valid3, valid4, valid5,];
, у которого в качестве элементов выступают только другие массивы, которые в свою очередь уже содержат цифры.
spoilerconst valid1 = [4, 5, 3, 9, 6, 7, 7, 9, 0, 8, 0, 1, 6, 8, 0, 8];
Как мне через новую функцию отправить все элементы массива родителя в функцию validateCred? (основной блок в конце вопроса)
Пробовал нечто такое,
spoilerconst findInvalidCards = batchArray => {
for (let i = 0; i < batchArray.length; i++) {
validateCred(batchArray[i])
console.log( "number = " + batchArray[i]);
}
};
но при тесте код застревает на
let numberReverse = number.reverse(); ( 3 строчка функции validateCred в основном блоке)
Основной блок кода, который выдает нужное число число
spoiler
const validateCred = number => {
let numberReverse = number.reverse();
let evenArray = []; // even numbers
let oddArray = []; // odd numbers
<i>// sort index position by odd numbers</i>
for (let index = 0; index < numberReverse.length; index += 2) {
oddArray.push(numberReverse[index]);
}
<i> // sort index position by even numbers</i>
for (let indexEven = 1; indexEven < numberReverse.length; indexEven += 2) {
evenArray.push(numberReverse[indexEven] * 2);
<i>//take two-digit even numbers and subtract nine</i>
for (let indexMinus = 0; indexMinus < evenArray.length; indexMinus++) {
if (evenArray[indexMinus] >= 10) {
evenArray[indexMinus] -= 9;
}
}
}
<i> //.concat even and odd numbers</i>
let totalArray = oddArray.concat(evenArray);
<i> //.reduce totalArray after .concat</i>
let final = totalArray.reduce(function(a, b) {
return a + b;
});
return final;
};