@SirAlejandro

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

Как написать метод для создания вложенного объекта из плоского? В плоском объекте есть поля с именами user.id, posts.user.name и т.д. Нужно из этого собрать объект с полем {user: {id: 5}} и так далее.
  • Вопрос задан
  • 973 просмотра
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
const buildNestedObj = (source, target = {}) =>
  Object.entries(source).reduce((acc, [ path, val ]) => {
    const keys = path.split('.');
    const key = keys.pop();
    keys.reduce((p, c) => p[c] = p[c] || {}, acc)[key] = val;
    return acc;
  }, target);
Ответ написан
rockon404
@rockon404
Frontend Developer
Отлично подойдет _.set
const obj = {};
_.set(obj, 'user.id', 5);
console.log(obj); // { user: { id: 5 } }
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@nvdfxx
Senior Pomidor developer
let arr = [];
arr.push({posts.user.name: {id: user.id}});
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы