1,Маша,13,40,3
2,Петя,12,27,6 3,Коля,10,21,4 4,Вася,7,6,5 |
dima***,
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Документ без названия</title> </head> <body> <script> function sum(i){ var a=arr[i][1]+arr[i][2]; return a; } function pro(i){ var a=arr[i][1]*arr[i][2]; return a; } function raz(i){ var a=arr[i][1]-arr[i][2]; return a; } var arr=[ ["Петя",9,3], ["Маша",8,5], ["Коля",7,3], ["Вася",6,1] ]; var arr_new = [] for(i=0;i<arr.length;i++){ arr_new[i] = [arr[i][0],sum(i),pro(i),raz(i)] } arr_new.sort(function (a, b) { return b[1] - a[1] }) document.write(arr_new.join('<br />')) </script> </body> </html> |
Всё!!!То,что нужно!!!
:dance: Не знал,что так можно создавать массивы: var arr_new = [] for(i=0;i<arr.length;i++){ arr_new[i] = [arr[i][0],sum(i),pro(i),raz(i)] Рони,Спасибо,огромное!!! Deff,спасибо за новый способ сортировки-никогда,такой не видел! |
Сделал может кому пригодится
// Функции сортировки по id function sIdAsc(a, b) { if (a[0] > b[0]) return 1; else if (a[0] < b[0]) return -1; else return 0; } function sIdDesc(a, b) { if (a[0] < b[0]) return 1; else if (a[0] > b[0]) return -1; else return 0; } // Функции сортировки по дате function sDateAsc(a, b) { if (a[1] > b[1]) return 1; else if (a[1] < b[1]) return -1; else return 0; } function sDateDesc(a, b) { if (a[1] < b[1]) return 1; else if (a[1] > b[1]) return -1; else return 0; } // Функции сортировки по имени function sNameAsc(a, b) { if (a[2] > b[2]) return 1; else if (a[2] < b[2]) return -1; else return 0; } function sNameDesc(a, b) { if (a[2] < b[2]) return 1; else if (a[2] > b[2]) return -1; else return 0; } console.log('Фильт по id убывание'); sorting.sort(sIdAsc); console.log(sorting.join('\n')); console.log('Фильт по Date убывание'); sorting.sort(sDateAsc); console.log(sorting.join('\n')); console.log('Фильт по Name убывание'); sorting.sort(sNameAsc); console.log(sorting.join('\n')); console.log('Фильт по id возрастание'); sorting.sort(sIdDesc); console.log(sorting.join('\n')); console.log('Фильт по Date возрастание'); sorting.sort(sDateDesc); console.log(sorting.join('\n')); console.log('Фильт по Name возрастание'); sorting.sort(sNameDesc); console.log(sorting.join('\n')); console.log('------------------------'); То что имеем на выходе Изначальный массив 53,2015-03-18 09:53:33,Super User 63,2015-03-21 17:30:00,Super User 53,2015-03-18 09:53:33,Super User 62,2015-03-21 10:52:41,test 56,2015-03-18 15:57:33,Super User 61,2015-03-19 18:53:16,Super User 51,2015-03-18 09:16:00,Super User 60,2015-03-19 18:53:04,Super User 57,2015-03-18 16:00:40,Super User 58,2015-03-18 16:01:46,Super User 59,2015-03-18 16:48:52,Super User Фильт по id убывание 51,2015-03-18 09:16:00,Super User 53,2015-03-18 09:53:33,Super User 53,2015-03-18 09:53:33,Super User 56,2015-03-18 15:57:33,Super User 57,2015-03-18 16:00:40,Super User 58,2015-03-18 16:01:46,Super User 59,2015-03-18 16:48:52,Super User 60,2015-03-19 18:53:04,Super User 61,2015-03-19 18:53:16,Super User 62,2015-03-21 10:52:41,test 63,2015-03-21 17:30:00,Super User Фильт по Date убывание 51,2015-03-18 09:16:00,Super User 53,2015-03-18 09:53:33,Super User 53,2015-03-18 09:53:33,Super User 56,2015-03-18 15:57:33,Super User 57,2015-03-18 16:00:40,Super User 58,2015-03-18 16:01:46,Super User 59,2015-03-18 16:48:52,Super User 60,2015-03-19 18:53:04,Super User 61,2015-03-19 18:53:16,Super User 62,2015-03-21 10:52:41,test 63,2015-03-21 17:30:00,Super User Фильт по Name убывание 58,2015-03-18 16:01:46,Super User 51,2015-03-18 09:16:00,Super User 53,2015-03-18 09:53:33,Super User 56,2015-03-18 15:57:33,Super User 57,2015-03-18 16:00:40,Super User 53,2015-03-18 09:53:33,Super User 59,2015-03-18 16:48:52,Super User 60,2015-03-19 18:53:04,Super User 61,2015-03-19 18:53:16,Super User 63,2015-03-21 17:30:00,Super User 62,2015-03-21 10:52:41,test Фильт по id возрастание 63,2015-03-21 17:30:00,Super User 62,2015-03-21 10:52:41,test 61,2015-03-19 18:53:16,Super User 60,2015-03-19 18:53:04,Super User 59,2015-03-18 16:48:52,Super User 58,2015-03-18 16:01:46,Super User 57,2015-03-18 16:00:40,Super User 56,2015-03-18 15:57:33,Super User 53,2015-03-18 09:53:33,Super User 53,2015-03-18 09:53:33,Super User 51,2015-03-18 09:16:00,Super User Фильт по Date возрастание 63,2015-03-21 17:30:00,Super User 62,2015-03-21 10:52:41,test 61,2015-03-19 18:53:16,Super User 60,2015-03-19 18:53:04,Super User 59,2015-03-18 16:48:52,Super User 58,2015-03-18 16:01:46,Super User 57,2015-03-18 16:00:40,Super User 56,2015-03-18 15:57:33,Super User 53,2015-03-18 09:53:33,Super User 53,2015-03-18 09:53:33,Super User 51,2015-03-18 09:16:00,Super User Фильт по Name возрастание 62,2015-03-21 10:52:41,test 58,2015-03-18 16:01:46,Super User 61,2015-03-19 18:53:16,Super User 60,2015-03-19 18:53:04,Super User 59,2015-03-18 16:48:52,Super User 63,2015-03-21 17:30:00,Super User 57,2015-03-18 16:00:40,Super User 56,2015-03-18 15:57:33,Super User 53,2015-03-18 09:53:33,Super User 53,2015-03-18 09:53:33,Super User 51,2015-03-18 09:16:00,Super User ------------------------ |
Telnet,
вам дали универсальную универсальную функцию в 7 посте -- зачем плодить 6 функций вместо одной? |
Часовой пояс GMT +3, время: 17:08. |