我正在旋转我的头一阵子,但似乎我无法设法让我的工作方式,我希望它。实际上,我想要的只是为可选参数嵌套默认值。 我想看到的输出应该是:解构和设置嵌套的默认值
55, 44, { sub1: '0', sub2: 55, sub3: 'all'}
相反,我刚刚得到这个:
55, 44, { sub2: 55 }
可能有人给我抬起头,就这一个?
function foo({ param1=55, param2=44, param3:param3 = { sub1:sub1='0', sub2:sub2=200, sub3:sub3='all' } } = { }) {
console.log(param1, param2, param3);
}
foo({
param3: {
sub2: 55
}
});
没有默认值,如果没有被传递到该参数仅得到应用?我很肯定它不会运行'Object.assign'这样的东西。 –
如果你只是跳过'param3',整个默认对象就会进入游戏。我真的不知道你是否可以像这样嵌套默认值,找不到太多。 – jAndy