【发布时间】:2019-08-11 02:39:07
【问题描述】:
我正在尝试编写一个柯里化函数 dissoc,它接受一个 prop 和一个对象,并从对象中删除键及其值。
这是有效的代码:
const dissoc = prop => obj => {
const result = {};
for (let p in obj) {
result[p] = obj[p];
}
delete result[prop];
return result;
};
现在,我认为这可以通过使用computed properties、解构和其余运算符来写得更简洁:
const dissoc = prop => ({ [prop], ...obj}) => obj
但是这段代码会抛出:
Uncaught SyntaxError: Unexpected token ,
所以我尝试了:
const dissoc = prop => ({ prop, ...obj}) => obj
计算,但只返回没有道具的对象。
有没有办法动态解构和/或简化这段代码?
【问题讨论】:
标签: javascript destructuring computed-properties