温馨提示:本文翻译自stackoverflow.com,查看原文请点击:ecmascript 6 - Is it possible to destructure onto an existing object? (Javascript ES6)

ecmascript 6 - 是否可以将其分解为现有对象?

发布于 2020-03-27 10:26:22

例如,如果我有两个对象:

var foo = {
  x: "bar",
  y: "baz"
}

var oof = {}

我想将x和y值从foo转移到oof。有没有办法使用es6解构语法来做到这一点?

也许像这样:

oof{x,y} = foo

查看更多

查看更多

提问者
majorBummer
被浏览
109
loganfsmyth 2018-09-08 01:22

虽然丑陋且有点重复,但您可以

({x: oof.x, y: oof.y} = foo);

它将读取foo对象的两个值,并将它们写入对象上它们各自的位置oof

就个人而言,我还是想读

oof.x = foo.x;
oof.y = foo.y;

要么

['x', 'y'].forEach(prop => oof[prop] = foo[prop]);

虽然。