В JavaScript у нас есть две основные структуры данных: Map и Object. Map — это набор пар ключ-значение, тогда как Object — это набор свойств. Иногда нам может понадобиться преобразовать карту в объект для выполнения определенных операций. Вот руководство о том, как это сделать.

Использование Object.fromEntries()

Один из способов преобразовать карту в объект — использовать метод Object.fromEntries(). Этот метод принимает итерируемый объект (например, массив или карту), содержащий пары ключ-значение, и возвращает объект с этими парами ключ-значение.

const myMap = new Map([['a', 1], ['b', 2], ['c', 3]]);
const myObj = Object.fromEntries(myMap);
console.log(myObj); // { a: 1, b: 2, c: 3 }

Использование Object.assign()

Другой способ преобразовать карту в объект — использовать метод Object.assign(). Этот метод берет один или несколько исходных объектов и копирует их свойства в целевой объект. Мы можем создать пустой объект в качестве цели и передать карту в качестве источника.

const myMap = new Map([['a', 1], ['b', 2], ['c', 3]]);
const myObj = Object.assign({}, myMap);
console.log(myObj); // { a: 1, b: 2, c: 3 }

Итерация по карте

Мы также можем преобразовать карту в объект, перебирая карту и вручную добавляя пары ключ-значение к объекту.

const myMap = new Map([['a', 1], ['b', 2], ['c', 3]]);
const myObj = {};
for (let [key, value] of myMap) {
  myObj[key] = value;
}
console.log(myObj); // { a: 1, b: 2, c: 3 }

Вот и все! Это три способа преобразования карты в объект в JavaScript. Выберите метод, который лучше всего соответствует вашим потребностям, и используйте его в своем коде.