【发布时间】:2017-01-17 06:06:41
【问题描述】:
我有一个关于使用具有默认参数的 es6 函数的问题。
这是一个例子:
const add = (a = 1, b = 2) => a + b;
如您所见,a 和 b 分别默认为 1 和 2。
使用默认值,我可以在没有任何参数的情况下调用函数,如下所示:
add(); // 3
我也可以省略参数b:
add(2); // 4
要省略参数a,我可以传入undefined:
add(undefined, 3); // 4
我的问题:
将undefined 作为第一个参数传入以便使用默认的第一个参数(在本例中为1)调用函数是不好的做法吗?
【问题讨论】:
-
这就是预定义变量的目的。在我看来,它完全没问题。
-
除非不给它一个默认值更有意义(即,让它默认为
undefined)