最好通过示例解释。以下工作在es6中创建一个由现有对象的一些键组成的对象:
var o = {a:1, b: 2, c: 3}
var {a, c} = o
var subsetObj = {a, c} // will be: {a:1, c:3}
这里有两个缺点:
a
和c
变量来污染局部变量范围,这些变量在本地不需要,除非作为创建子集对象的方法。有没有办法在单个语句中完成相同的操作,而不引入不必要的本地a
和c
?
答案 0 :(得分:4)
没有具体的语法。你可以继续这样做:
var subsetObj = {a: o.a, c: o.c};
如果您有更多属性或可变数量的属性,请创建辅助函数。
相关:Is it possible to destructure onto an existing object? (Javascript ES6)