@maxemga

Как отсортировать массив объекта по их свойствам?

Есть массив объектов
const array = [
    {name:  'Pizza', price: '309'}
    {name:  'Milk', price: '129'}
    {name:  'Cheese', price: '299'}
    {name:  'Ice', price: '99'}
]

Мне нужна сортировка по имени (типо в алфавитном порядке) и по цене (от меньшего к большему), но я не понимаю, как сортировать массив с объектами по их значению
При этом я хочу чтобы отсортированный массив записывался другой, но если написать что-то типа
const newArray = array.sort((a, b) => a.price > b.price ? 1 : -1);

То array тоже изменится
  • Вопрос задан
  • 67 просмотров
Решения вопроса 1
zb_venom
@zb_venom
Жизнерадостный чебурек
array.sort((a, b) => a.name.localeCompare(b.name))
UPD:
var newArray = Array.prototype.slice.call(array).sort((a, b) => a.name.localeCompare(b.name))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
02 мая 2024, в 14:44
500 руб./за проект
02 мая 2024, в 14:36
3000 руб./за проект
02 мая 2024, в 14:29
30000 руб./за проект