我有这个函数签名const foo = (arg, { opt1, opt2, opt3 }) => { ...};但我希望第二个参数是可选的,例如调用函数foo("Hello");但是,我得到TypeError:无法解构opt1“未定义”或“空”的属性。因此,我很想通过更改以下功能来解决此问题:const foo = (arg, options = {}) => { const { opt1, opt2, opt3 } = options; ...};但是想知道是否有更多的内联替代方案?
3 回答
Smart猫小萌
TA贡献1911条经验 获得超7个赞
您可以分配一个默认对象并同时进行解构。
如果没有第二个参数或 ,则结果适用undefined于所有三个解构属性undefined。
const foo = (arg, { opt1, opt2, opt3 } = {}) => {
...
};
添加回答
举报
0/150
提交
取消