Раскрытие массивов объектов в JavaScript

Beginner

This tutorial is from open-source community. Access the source code

Введение

В этом практическом занятии мы изучим функцию unwind в JavaScript. Целью этой функции является получение массива объектов из объекта и одного из его свойств, значения которого представляют собой массив. С использованием деструктуризации объектов и Array.prototype.map() мы можем создать массив объектов, в котором каждый объект содержит значения исходного объекта, за исключением указанного ключа, который отображается на отдельные значения. В ходе этого практического занятия мы углубим наше понимание того, как манипулировать данными и извлекать их из объектов в JavaScript.

Функция разворачивания объекта

Для разворачивания объекта по его свойству, значения которого представляют собой массив, используйте функцию unwind.

  • Чтобы начать программирование, откройте Терминал/SSH и введите node.
  • Функция использует деструктуризацию объектов для исключения пары ключ-значение для указанного ключ из объекта.
  • Затем она использует Array.prototype.map() для значений заданного ключа, чтобы создать массив объектов.
  • Каждый объект содержит значения исходного объекта, за исключением ключа, который отображается на отдельные значения.
const unwind = (key, obj) => {
  const { [key]: _, ...rest } = obj;
  return obj[key].map((val) => ({ ...rest, [key]: val }));
};

Пример использования:

unwind("b", { a: true, b: [1, 2] }); // [{ a: true, b: 1 }, { a: true, b: 2 }]

Резюме

Поздравляем! Вы завершили практическое занятие по разворачиванию объекта. Вы можете выполнить больше практических занятий в LabEx, чтобы улучшить свои навыки.