вход
регистрация
Восстановить доступ

отсортировать json объект на javascript

 

Довольно часто мне приходится сталиваться с сортировкой массива в js. Но здесь появилась задача поинтересней сортировка массива с отложенной загрузкой товаров в каталоге. Основной задачей является чаще всего загрузка данных с отсортированными данными на PHP.

Благодаря встроенной в javascript функции sort можно очень просто сортировать массивы

 

[1, 3, 9, 2].sort(function(a,b){return a-b;});
// Returns: [1, 2, 3, 9]

 

Стоить заметить, что для сортировки числовых значений надо задать функциональный литерал иначе функция сортирует массив как строковые значения. Но как быть, когда нам пришел json объект с произвольными данными и нам надо отсортировать его по какому-то из значений, например, “цене товара” или “времени добавления” ? Для этого в javascript в функцию sort можно передать функцию сортировки. Вот пример, как можно сортировать json объект на javascript

 

[
  { name: "Клиент 1", price: 2000 },
  { name: "Клиент 2", price: 1000 },
  { name: "Клиент 5", price: 1200 },
  { name: "Клиент 3", price: 3000  }
].sort(function(obj1, obj2) {
  // Сортировка по возрастанию
  return obj1.price-obj2.price;
});

 

Для обратной сортировки можно поменять местами первый и второй объект

 

[
  { name: "Клиент 1", price: 2000 },
  { name: "Клиент 2", price: 1000 },
  { name: "Клиент 5", price: 1200 },
  { name: "Клиент 3", price: 3000  }
].sort(function(obj1, obj2) {
  // Сортировка по убыванию
  return obj2.price-obj1.price;
});

 

Сортировка массива объектов по строкам

 

[
  { name: "Бананы", price: 2000 },
  { name: "Сливы", price: 1000 },
  { name: "Тыква", price: 1200 },
  { name: "Ананасы", price: 3000  }
].sort(function(obj1, obj2) {
  if (obj1.name < obj2.name) return -1;
  if (obj1.name > obj2.name) return 1;
  return 0;
});

О компании

Зона Креатива, это территория свободы творчества, воплощение новых технологий без потери скорости. Большая информационная база, открытая статистика. Дружелюбный и сплоченный коллектив который сможет вам помочь в сложной ситуации.

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

Статьи

Новости

Тонкие грани рейтинга

Большое количество каталог, информационный блог о настройках сервера и техническая поддержка.

Минимализм в стиле

Уменьшено время загрузки сайта при помощи загрузки только необходимых для сайта файлов

Обновление дизайна

Рады представить вам обновленный дизайн нашего сайта, приятный стиль без потери функционаьности приятно вас удивит.

Интересное

Copyright © 2018 ES artCat. Все права защищены. Разработано Zonesa.ru - CMS ASP

ASP! is Free Software released under the GNU General Public License.

Copyright © 2012. CMS - Art Studio PRO Загружено за [PHP] 0.0149 сек. [JS]