Оставить самые длинные массивы в массиве

Есть массив массивов, допустим:

[
  [ '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);
→ Ссылка