希望根据参数制定但定义默认值
在我寻求具有解构的自记录代码的过程中,但很干巴巴地想要这样做......
async function shampoo({ lather = true, rinse = true, repeat = 2 } = {}) {
await api.dogWasherMachine(magicalArguments) // ???
// don't want to have to do this:
// api.dogWasherMachine({ lather, rinse, repeat })
// currenty arguments is {} and actual input is defined
}
如何获得这些已定义的神奇参数?
参数没有定义默认输入,但我该如何做到这一点?
最佳答案
不可能单独在参数中完成此操作 - 解构必须将每个属性提取到一个独立的命名变量中,而不留下对原始对象的引用。您必须使用另一条语句来完成此操作,例如:
async function shampoo(param = {}) {
const defaultObj = {
lather: true,
rinse: true,
repeat: 2
};
await api.dogWasherMachine({ ...defaultObj, ...param });
}
关于javascript - 如何获取独立于变量名的 JavaScript 解构参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56782483/