Return an array consisting of the largest number from each provided sub-array. For simplicity, the provided array will contain exactly 4 sub-arrays.
Remember, you can iterate through an array with a simple for loop, and access each member with array syntax arr[i].
Remember to use Read-Search-Ask if you get stuck. Write your own code.
Here are some helpful links:
function largestOfFour(arr){
var largest = [0,0,0,0,]; //Пустой вериебл для аутпута с числовыми данными 0-0-0-0 для первого сравнения в иф
for(var i = 0; i< arr.length; i++){// весь еррей
for(var j = 0; j<arr[i].length; j++){// нырок глубже к каждому из четырех
if (arr[i][j]>largest[i])/*если цифра в одном из четырех еррев больше одного из largest = [0,0,0,0,]
- одной позиции [] в largest, а в нем позиции 0,1,2,3 - четыре.
Каждый ерреей отдает свое большее чеисло в одну \ячейку.
Еррей заканчивается и идет переход к другому, как только
одно из чисел в нем, которое постоянно перезаписывается в один из [0,0,0,0]
largest не оказывается наибольшим в своем еррее(одном из четырех)*/
{largest[i] = arr[i][j];// сохраняй, как один из largest = [0,0,0,0,]
}
}
}return largest;
} largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);
/*-----------------------------------------Map and reduce method-----------------------------------------------------------*/
function largestOfFour(arr) {
return arr.map(function(what){/*берем наш еррей и запускаем его в map, котороый
The map() method creates a new array with the results of calling a provided
function on every element in the calling array. Вкратце - Создает новый еррей - с самымим большими числами,
в нашем случае и возвращает данные выполняемой функции из текущего еррея.
то есть работает с каждым из [[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]
*/
return what.reduce(function(prev,current){/*функция, которую он выполняет в итерируещем map
- любое действие по сути, просто без условий и длинн. Здесь это функция reduce
которая сводит два числа в еррее предыдущее - слудующее к одному. при чем
по нужному нам принципу - оставляя большее. Тое сть от reduce здесь на
абстрактном уровне мы берем аргументы - следующий, предыдущий и суть - останется
один, сведение к единому числу, не к сумме., как обычно*/
return (current>prev)?current : prev; });
}, 0);
}
largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);