Правильный способ разрушения объекта
У меня есть сценарий, где я получаю объект из обещания, и мне нужно добавить некоторые ключи этого объекта к другому объекту. Например:
// Received from promise
object_1 = {
name: 'SH'
};
// Want to add object_1.name to object_2
object_2 = {
id: 1234
};
Обычно я мог бы сделать следующее, но я хочу сделать это с деструктуризацией объекта
object_2.name = object_1.name;
иметь:
object_2 = {
id: 1234,
name: 'SH'
};
2 ответа
Решение
Вы можете использовать назначение деструктурирования целевого объекта / свойства с шаблоном назначения свойства объекта [YDKJS: ES6 & Beyond].
var object_1 = { name: 'SH' },
object_2 = { id: 1234 };
({ name: object_2.name } = object_1);
console.log(object_2);
Вы можете получить ожидаемый результат, используя разрушение объекта следующим образом:
// Received from promise
object_1 = {
name: 'SH'
};
// Want to add object_1.name to object_2
object_2 = {
id: 1234
};
object_2 = {
...object_2,
...object_1
}