Оставить самые длинные массивы в массиве
Есть массив массивов, допустим:
[
[ '1595862781 1595862783' ],
[ '1595862781 1595862783', '1595862782 1595862784' ],
[ '2487562781 2487562783', '2487562782 2487562784' ],
[ '1595862782 1595862784' ]
]
Как оставить в нём самые длинные массивы?
Ответы (2 шт):
Автор решения: Danis
→ Ссылка
function f(arr){
var len = 0;
for (var i = 0; i < arr.length; i++){
if (arr[i].length > len){
len = arr[i].length;
}
}
var new_arr = [];
for (var i = 0; i < arr.length; i++){
if (arr[i].length == len){
new_arr.push(arr[i]);
}
}
return new_arr;
}
Автор решения: wololo
→ Ссылка
arr = [ ....... ];
let max_length = arr.reduce((res, item) => item.length > res ? item.length : res, -1);
arr = arr.filter(item => item.length === max_length);