我想使用ES6 destructuring来指定对象的属性,但无法弄清楚语法。对象属性赋值与解构?
< = ES5:
var dst = {}; // already in existence, with its own props, methods, etc.
var src = { a: 'foo', b: 'bar', c: 'baz' };
dst.a = src.a;
dst.b = src.b;
> = ES6(我自己编造的,没有工作的语法):
let dst = {};
let src = { a: 'foo', b: 'bar', c: 'baz' };
dst[{a, b}] = src;
是否有可能使用解构到一个对象分配?什么是正确的语法?
编辑:在我的使用情况下,dst
是需要合并src
的属性的子集之前就存在很好的对象;它不是一个专门为从src
“借”而创建的新对象。
这看起来很像解构对我来说,你可能只是克隆的项目。 – MinusFour
这不是http://stackoverflow.com/questions/25553910/one-liner-to-take-some-properties-from-object-in-es6;那个问题并不是要求将一个属性的子集分配给另一个对象,而是要求从另一个属性的子集中创建一个新对象。我会编辑我的问题来澄清这一点。 – ericsoco
@MinusFour我不能克隆或'Object.assign()',因为我不想要所有'src'的属性。在我的例子中,请注意我留下了'c:'baz''。 – ericsoco