2012-06-26 4 views
-3

У меня есть следующие массивы:Сортировка массивов по их длине

http://jsfiddle.net/3NZsK/

Мне нужно сортировать массивы по их длине.

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

К примеру, у меня есть следующая фиктивная функция, которая может получить нам вторую по величине массива:

http://jsfiddle.net/WPRYf/

Что выше алгоритм фиктивная функция?

Спасибо заранее

+0

извините, что? вы хотите, чтобы сортировать массивы по их длине? – gexicide

+0

Я хочу узнать, какой из них самый большой, второй по величине, третий по величине и наименьший по количеству. Мне нужно назначить их в вышеперечисленные переменные (см. Мое объяснение) – Bayu

+0

Я думаю, когда @gexicide сказал «Что?» он имел в виду, что ваше объяснение не имеет большого смысла, и он хотел бы, чтобы вы разъяснили его. – phenomnomnominal

ответ

7
var 
    a = ["a", "a"]; 
    b = ["b", "b", "b", "b"], 
    c = ["c", "c", "c"], 
    d = ["d"], 
    container = [a, b, c, d]; 

​container.sort(function (a, b) { 
    return b.length - a.length; 
}); 

console.log(container); 

container будут отсортированы от самых длинных (большинство элементов) до самой короткой (наименьшее число элементов). Доступ как:

container[0] // longest 
container[1] // 2nd longest 
// ... 

http://jsfiddle.net/pSRVq/

1

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

+0

Спасибо, ответ Йоши правильный – Bayu

Смежные вопросы