Конвертация списка пар «ключ‑значение» в объект

Преобразуйте элементы в пары [name, value] и передайте их Object.fromEntries. Получится новый объект без изменения исходного массива.

Короткий ответ

Что ответить на собеседовании

Преобразуйте элементы в пары [name, value] и передайте их Object.fromEntries. Получится новый объект без изменения исходного массива.

Подробный разбор

Ответ с пояснениями

Условие

Дан массив элементов, каждый из которых имеет свойства name и value. Требуется превратить этот массив в объект, где каждый ключ берётся из свойства name, а соответствующее значение — из свойства value.

// Пример
var arr = [{ name: 'width', value: 10 }, { name: 'height', value: 20 }];
// Вывод {width: 10, height: 20}

Ответ

Преобразуйте элементы в пары [name, value] и передайте их Object.fromEntries. Получится новый объект без изменения исходного массива.

const result = Object.fromEntries(arr.map(item => [item.name, item.value]));
// { width: 10, height: 20 }

Если name повторяется, последнее значение заменяет прежнее. Строковые ключи используются буквально; Object.fromEntries создаёт собственные свойства, в том числе для имени proto, без присваивания через унаследованный setter. Вложенные значения-объекты сохраняют ссылки; это преобразование структуры, не глубокая копия данных.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее