最好的解释是通过示例来说明。以下是在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
?
var o = {a:1, b: 2, c: 3}; _.pick(o, ['a', 'c'])
? - loganfsmyth