Задать вопрос
@nikolay22323

Как отсортировать массив в порядке другого массива?

Есть несколько массивов или более.
Стоит задача сделать сравнение товаров.
У меня есть массивы
[{ "tec:" 98,  "maintext": 97, "eletro": 343, "bong": 332, "ethernet": 100 }]
- первый массив
[{"ethernet": 100,  "tec:" 98,  "maintext": 97,  "eletro": 343,  guid: 64,  "bong": 332 }]
- второй массив

При этом там может быть 10 таких массив с разными ключами. Как же мне отсортировать все массивы по одному определенному массиву которых находится в списке, к примеру второй массив осортировать так чтобы все ключи были в таком же порядке как и в пером. Но если ключ не совпадает, то просто его в самый низ ставим.
  • Вопрос задан
  • 140 просмотров
Подписаться 1 Простой 4 комментария
Пригласить эксперта
Ответы на вопрос 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
const a = { x: 1, y: 2}; // главные свойства
const b = { y: 3, z: 5}; // второй товар для сравнения с главным

const comparison = {
  // каждому из свойств A подставляем значения из B или прочерк если нет
  ...Object.keys(a).reduce((acc, c) => (acc[c] = b[c] ?? '-', acc), {}),
  // дописываем поверх свойства B
  ...b
}

// получилось:
{ x: "-", y: 3, z: 5 }
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы