Как сделать сортировку массива по свойству в объекте js

Аватар пользователя Ivan Gagarinov
Ivan Gagarinov
25 ноября 2021

Чтобы сделать сортировку массива по свойству в объекте, можно воспользоваться методом sort.

const users = [
  {
    name: 'Name2',
    age: 23,
  },
  {
    name: 'Name3',
    age: 34,
  },
  {
    name: 'Name1',
    age: 12,
  },
];

const key = 'age'; // ключ, по которому будем сортировать
const sorted = users.sort((user1, user2) => user1[key] > user2[key] ? 1 : -1);

console.log(sorted); // проверяем результат
1 0
Аватар пользователя Aleksey
Aleksey
05 апреля 2023

Если сортировку по age можем записать так:

const sorted = users.sort((user1, user2) => user1[key] - user2[key]);

либо,

const sorted = users.sort((user1, user2) => user2[key] - user1[key]);

в зависимости от того, делаем ли мы сортировку по убыванию или возрастанию.

0 0
Познакомьтесь с основами JavaScript бесплатно