>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >помогите решить проблему с сортировкой в js http://forum.mozilla-russia.org/viewtopic.php?id=17644 |
maxmets > 21-06-2007 18:07:56 |
нужна помощь. Выделить код Код:comp = function(a, b) { return (a == b) ? 0 : (a > b) ? 1 : -1; } var c = [[2,3,1],['pit','mike','igor']]; c[1].sort(function(a, b) {return comp(a, b)}); в данном случае в comp в виде параметров a и b попадут элементы массива c[1]. можно ли сделать так, чтобы в comp попадали элементы массива c[0]? в итоге я хочу получить |
Shutnik > 21-06-2007 18:42:44 |
хм, вы же сами вызываете что я не понимаю... |
maxmets > 21-06-2007 19:22:37 |
я вызываю сортировку массива c[1], т.е. именно его я и хочу отсортировать. но хочу, чтоб сравнивались при этом не элементы его же самого, а элементы c[0]. shutnik пишет
|
Anton > 21-06-2007 19:42:27 |
Выделить код Код:function comp (a, b) { return(a==b)? 0: ((a>b)? 1: -1); } var c = [[2, 3, 1], ['pit', 'mike', 'igor']]; c [1]. sort ( function (a, b) { return comp (c [0] [c [1]. indexOf (a)], c [0] [c [1]. indexOf (b)]); } ); c [0]. sort (comp); |
maxmets > 22-06-2007 13:42:28 |
есть такой вариант, но если массивы увеличить до 2000 в каждом, по времени будет слишком дорогая операция Anton пишет
|
Lynn > 22-06-2007 14:17:13 |
По-моему, проще привести этот массив к нормальному виду |