Сортируй, пока не поздно.

Часто приходится сталкиваться с тем, что нужно провести сортировку товара (или других элементов) на странице. Данные этого товара мы можем получать любым способом, подгружать и рендерить при загрузке страницы или получать данные через ajax.

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

Самый удобный способ и для нас и для пользователя — это сортировать элементы на фронте, тем самым мы не будем нагружать бэкенд, а клиент получит максимально быстрый результат. Для этого в библиотеке jQuery есть функция sort (она же есть и в ванильном js), которая позволяет сортировать элементы по определенным условиям, которые вы же и зададите.

Пример работы сортировки.

Само условие «return ..» в sortElements может быть любым, главное возвращать результат. Вы можете проводить там «любые» сравнения, вычисления и операции. Главное сильно не заигрываться, от сложности вычислений зависит скорость сортировки.