【发布时间】:2018-10-27 03:19:09
【问题描述】:
例如,我有这个对象:
const payload = {
apple: 1,
dog: 2,
cat: 3
}
我想把它解构成一个只包含apple和dog的新对象:
const newPayload = {
apple:1,
dog: 2
}
类似:
const {{apple, dog} : newPayload} = payload
显然上述是错误的,但想知道是否有办法做这样的事情。
谢谢!
【问题讨论】:
-
这不是“解构”(即从元组转换为单个命名变量),而是带有属性过滤器的浅拷贝。
-
这种方式很丑……
const newPayload = (({apple, dog}) => ({apple, dog}))(payload) -
@Dai 不,这不是那个问题的重复。这是不同的
-
一个不那么丑的无污染方式是
const newPayload = (({ cat, ...x }) => x)(payload);
标签: javascript reactjs ecmascript-6