@SirAlejandro

Как создать вложенный объект из плоского?

Всем привет! Помогите, плиз написать метод для создания вложенного объекта из плоского. Суть в чем : в плоском объекте есть поля, в которых есть точка 'user.id' и 'posts.user.name' и т.д. Нужно из это собрать объект с полем {user: {id: 5}} и так далее. Может есть уже готовые либы, которые решают похожую задачу?
  • Вопрос задан
  • 99 просмотров
Решения вопроса 1
0xD34F
@0xD34F
const buildNestedObj = (plain) => Object.entries(plain).reduce((obj, [ k, v ]) => {
  const keys = k.split('.');
  keys.slice(0, -1).reduce((acc, n) => acc[n] = acc[n] || {}, obj)[keys.pop()] = v;
  return obj;
}, {});
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
rockon404
@rockon404
Frontend Developer
Отлично подойдет _.set
const obj = {};
_.set(obj, 'user.id', 5);
console.log(obj); // { user: { id: 5 } }
Ответ написан
@nvdfxx
Senior Pomidor developer
let arr = [];
arr.push({posts.user.name: {id: user.id}});
Ответ написан
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы
CS Money Санкт-Петербург
от 120 000 до 150 000 руб.
Digital Sharks Казань
от 60 000 до 65 000 руб.
Alternativa Games Пермь
от 40 000 до 80 000 руб.