Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.12.2016, 23:35
Кандидат Javascript-наук
Отправить личное сообщение для Signal Посмотреть профиль Найти все сообщения от Signal
 
Регистрация: 03.05.2016
Сообщений: 137

Помогите с сортировкой массива
Здравствуйте.
Есть массив
[{"idLine":"1","PercentIMG":[{"Napr":"Name1","BySort":"false"},{"Napr":"Name2", "BySort":7}]},
{"idLine":"4","PercentIMG":[{"Napr":"Name1","BySort":22},{"Napr":"Name2","BySo rt":19}]},
{"idLine":"5", "PercentIMG":[{"Napr":"Name1","BySort":7},{"Napr":"Name2","BySor t":5}]},
{"idLine":"6","PercentIMG":[{"Napr":"Name1","BySort":"false"},{"Napr":"Name2", "BySort":12}]},

как его отсортировать по PercentIMG?
и PercentIMG может быть любого размер, т.е. Name1, Name2...NameN
Надо отсортировать по BySort

Последний раз редактировалось Signal, 06.12.2016 в 23:48.
Ответить с цитированием
  #2 (permalink)  
Старый 07.12.2016, 00:03
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

Signal,
подожду телепата
Ответить с цитированием
  #3 (permalink)  
Старый 07.12.2016, 00:26
Кандидат Javascript-наук
Отправить личное сообщение для Signal Посмотреть профиль Найти все сообщения от Signal
 
Регистрация: 03.05.2016
Сообщений: 137

Сообщение от рони Посмотреть сообщение
Signal,
подожду телепата
телепатирую, нужно отсортировать "PercentIMG":[{"Napr":"Name1","BySort":"false"},{"Napr":"Name 2", "BySort":7}]},

BySort должен стать первым, если он не false и самый максимальный

idLine должен быть отсортирован по наивысшему занчению из PercentIMG
Ответить с цитированием
  #4 (permalink)  
Старый 07.12.2016, 00:28
Кандидат Javascript-наук
Отправить личное сообщение для Signal Посмотреть профиль Найти все сообщения от Signal
 
Регистрация: 03.05.2016
Сообщений: 137

"PercentIMG": может быть и [{"Napr":"Name1","BySort":"false"},{"Napr":"Name 2", "BySort":7},{"Napr":"Name 3", "BySort":23},{"Napr":"Name 4", "BySort":9} ,{"Napr":"Name 3", "BySort":false}]}

нужен результат "PercentIMG":[{"Napr":"Name 3", "BySort":23}, {"Napr":"Name 4", "BySort":9}, {"Napr":"Name 2", "BySort":7}, {"Napr":"Name1","BySort":"false"}, {"Napr":"Name 3", "BySort":false}]

ну и такойже idLine по сортировке в зависимотси от PercentIMG первых записей!

Последний раз редактировалось Signal, 07.12.2016 в 00:32.
Ответить с цитированием
  #5 (permalink)  
Старый 07.12.2016, 00:39
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

Signal,
false это строка ?
Ответить с цитированием
  #6 (permalink)  
Старый 07.12.2016, 00:44
Кандидат Javascript-наук
Отправить личное сообщение для Signal Посмотреть профиль Найти все сообщения от Signal
 
Регистрация: 03.05.2016
Сообщений: 137

Сообщение от рони Посмотреть сообщение
Signal,
false это строка ?
нет это boolean, просто json сделал как строка я ее и скопировал сюда
Ответить с цитированием
  #7 (permalink)  
Старый 07.12.2016, 00:51
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

Signal,
<script>

var arr = [{"idLine":"1","PercentIMG":[{"Napr":"Name1","BySort":false},{"Napr":"Name2", "BySort":7}]},
 {"idLine":"4","PercentIMG":[{"Napr":"Name1","BySort":22},{"Napr":"Name2","BySort":19}]},
 {"idLine":"5", "PercentIMG":[{"Napr":"Name1","BySort":7},{"Napr":"Name2","BySort":5}]},
 {"idLine":"6","PercentIMG":[{"Napr":"Name1","BySort":false},{"Napr":"Name2", "BySort":12}]}] ;
arr.forEach(function(el) {
el = el.PercentIMG;
el.sort(function(a,b) {
return b.BySort - a.BySort
})
})
arr.sort(function(a,b) {
return b.PercentIMG[0].BySort - a.PercentIMG[0].BySort
})
document.write(JSON.stringify(arr, null, 4))


  </script>
Ответить с цитированием
  #8 (permalink)  
Старый 07.12.2016, 01:05
Кандидат Javascript-наук
Отправить личное сообщение для Signal Посмотреть профиль Найти все сообщения от Signal
 
Регистрация: 03.05.2016
Сообщений: 137

ОО, большое тебе спасибо!!! с меня пиво!!! я не силен в javascripts. еще раз тебе пиво!!!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите создать генератор массива karakym Общие вопросы Javascript 10 23.11.2016 08:40
Помогите с сортировкой массива bolatik Javascript под браузер 4 16.01.2014 14:58
Помогите удалить элемент двумерного массива Dorsaj Общие вопросы Javascript 5 18.10.2010 18:49
Помогите разобраться с повторением при генерации массива (Javascript) JsLoveR Javascript под браузер 4 16.12.2009 15:26