@mvr1976
Учу html, css, js

Как вывести максимальные значения массивов, вложенных в родительский массив?

Добрый день!

Пожалуйста, помогите разобраться, задача такая: функция должна возвращать массив, состоящий из максимальных значений массивов, вложенных в общий для них массив.

arr = [[13,27,18,26], [4, 5, 1, 3],[32, 35,37,39],[1000, 1001, 857, 1]];


Функцию я написал, все работает, но не совсем корректно, должно получаться 27, 5, 39, 1001, а получается 27,27, 39, 1001. То есть, второй массив выбивается из восходящего порядка, и его значение игнорируется и заменяется значением первого. Что это, и как с этим бороться?
Вот код:
<script>
function largestOfFour(arr) {  
var high = 0;
var finArr = [];
for (var i = 0; i < arr.length; i++){//	в цикле большого массива
	var subArr = arr[i];			//определяем малые
	for (var a = 0; a < subArr.length; a++){//в каждом из малых
		if (subArr[a] > high){				//находим наибольшее значение
			high = subArr[a];
			}			
		}
				finArr.push(high);
	}	
  return finArr;
}
var q = largestOfFour([[13,27,18,26], [4, 5, 1, 3],[32, 35,37,39],[1000, 1001, 857, 1]], "");
console.log(q);

</script>
  • Вопрос задан
  • 196 просмотров
Пригласить эксперта
Ответы на вопрос 1
Finom
@Finom
[[13,27,18,26], [4, 5, 1, 3],[32, 35,37,39],[1000, 1001, 857, 1]].map(function(v) {
  return Math.max.apply(null,v);
});


Как написать функцию, думаю, разберетесь.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы