Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.02.2011, 17:08
Кандидат Javascript-наук
Отправить личное сообщение для PAMAC Посмотреть профиль Найти все сообщения от PAMAC
 
Регистрация: 12.08.2009
Сообщений: 116

Сортировка нескольких массивов
Здравствуйт!
Есть 4 массива:
var ar1 = new Array(1,2,4,5,7);
var ar2 = new Array(30,80,60,90,10);
var ar3 = new Array(0,0,1,0,1);
var ar4 = new Array(4,5,3,2,1);


Нужно отсортировать массив ar2 по убыванию так, чтобы и элементы в других массивах соответственно изменились. Ну чтобы получилось следующее:
var ar1 = new Array(7,1,4,2,5);
var ar2 = new Array(10,30,60,80,90);
var ar3 = new Array(1,0,1,0,0);
var ar4 = new Array(1,4,3,5,2);


Как такое можно реализовать? Есть страндартная функция?
Ответить с цитированием
  #2 (permalink)  
Старый 06.02.2011, 17:32
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

гораздо проще будет, если вы сформируете из этих массивов, массив массивов, соответсвенно столбцам
var temp = [
[1,30,0,4],
[2,80,0,5],
[4,60,1,3],
[5,90,0,2],
[7,10,1,1]
];

такой массив уже красиво сортируется с помощью стандартного .sort
Ответить с цитированием
  #3 (permalink)  
Старый 06.02.2011, 19:15
Кандидат Javascript-наук
Отправить личное сообщение для PAMAC Посмотреть профиль Найти все сообщения от PAMAC
 
Регистрация: 12.08.2009
Сообщений: 116

Не спорю. Но мне нужно именно 4 массива. Их можно отсортировать так, как я хочу стандартными функциями? Или придётся писать свою?
Ответить с цитированием
  #4 (permalink)  
Старый 06.02.2011, 23:31
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,227

Сообщение от PAMAC
Есть 4 массива
Что хранится в те 4-х массивах? Почему они так связаны между собой?

Сообщение от PAMAC
Но мне нужно именно 4 массива.
Почему?

Сообщение от PAMAC
Есть страндартная функция?
Нет такой стандартной функции которая бы, сортируя один массив, переставляла элементы в других массивах...
Ответить с цитированием
  #5 (permalink)  
Старый 07.02.2011, 14:55
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

В чем необходимость именно 4-х массивов - непонятно. Гораздо проще использовать пары ключ-значение и сортировать по ключу. Т.е.
var arr = [{key: 1, value: [1,2,3,4]}, {key: 3, value: [3,5,1,0]}, {key: 0, value: [0,0,7,7]}];
arr.sort(function(a, b){return a.key - b.key});
alert( JSON.stringify(arr) )


P.S. Вы говорите, что ar2 нужно отсортировать по убыванию, а в следующем примере он отсортирован по возрастанию.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сложение нескольких значений элементов frolvict jQuery 2 04.12.2010 11:52
<select> установка нескольких селектов в одно значение ky100 Общие вопросы Javascript 7 04.10.2010 02:02
Сортировка таблиц с tablesort lexniko jQuery 0 03.11.2009 13:02
Сортировка числовых данных в таблице Vladsss Общие вопросы Javascript 15 01.09.2009 17:02
поменять цвет у нескольких строк в таблице Root Элементы интерфейса 4 21.04.2008 10:30