Поиск наибольших чисел, хранящихся в каждом подмассиве

#javascript #arrays

#javascript #массивы

Вопрос:

Я хочу получить наибольшее значение из каждого подмассива и поместить эти значения в совершенно новый массив, но на выходе возвращается пустой массив, я не знаю, что не так с этим кодом.

 function largestOfFour(arr) {
let newArr = []
for(let i=0; i<arr.lentgh; i  ){
  newArr.push(Math.max(...arr[i]))
}
return newArr;
}

let largest = largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);

console.log(largest); 

Комментарии:

1. length правописание имеет значение.

2. Это опечатка, вы написали lentgh

Ответ №1:

Функция работает правильно для меня, но если бы я должен был ее переписать:

Я бы посоветовал вам сопоставить массив вместо цикла. Что-то вроде:

 function maxOf(arr) {
  return arr.map(sa => Math.max(...sa))
}
 

РЕДАКТИРОВАТЬ: у вас опечатка, ее length не должно быть lentgh

Ответ №2:

 let largestSub = (arr) => [...arr.map(e => Math.max(...e))]

let result = largestSub([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]])

console.log(result)