【发布时间】:2019-07-19 22:22:44
【问题描述】:
这段代码按预期工作;但是,对于任何类型的输入,它都不是可扩展的:
const input = [{optionA: {a: 1}, optionB: {b: 1}, optionC: {c: 1}];
input.map(({optionA, optionB, optionC}) => {
return Object.assign({}, optionA, optionB, optionC);
});
问题:当输入键的名称和长度未知时,如何重构我的地图参数和我的 Object.assign 参数以不使用解构而是使用 javascript 的扩展语法来确保输出?
我怎样才能满足这些测试用例?
const input2 = [{optionZ: {z: 1}, optionY: {y: 1}, optionX: {x: 1}];
const input3 = [{optionA: {a: 1}, optionB: {b: 1}, optionC: {c: 1},{optionZ: {z: 1}, optionY: {y: 1}, optionX: {x: 1}];
input2.map(({optionA, optionB, optionC}) => {
return Object.assign({}, optionA, optionB, optionC);
});
input3.map(({optionA, optionB, optionC}) => {
return Object.assign({}, optionA, optionB, optionC);
});
【问题讨论】:
标签: javascript ecmascript-6 parameters spread