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

Аватар пользователя Ivan Gagarinov
Ivan Gagarinov
24 ноября 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

Для сортировки массива объектов по ключу с использованием библиотеки Lodash:

Пример кода:

const _ = require('lodash');

const cars = [
  { make: 'Toyota', model: 'Camry', year: 2018 },
  { make: 'Honda', model: 'Accord', year: 2019 },
  { make: 'Tesla', model: 'Model S', year: 2020 },
  { make: 'Ford', model: 'Mustang', year: 2017 },
];

const sortedCars = _.sortBy(cars, ['year']);

console.log(sortedCars);

В этом примере мы создали массив объектов cars, содержащий информацию о машинах, а затем отсортировали его по ключу year с помощью метода _.sortBy(). Результат сортировки мы записали в переменную sortedCars и вывели ее в консоль.

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