我总是看到这种情况,但我从来没有理解过。为什么这么多函数在函数定义中有这些嵌套的括号和奇怪的逗号?
之类的function name(param, param param)
对我来说有意义,或者
function name([param, [param, [param, [param]]]])
是有意义的,但是为什么要在逗号的左边加上左括号呢?
表示该参数是可选的。例如,在
function foo(par1[, par2]) {}
par1
参数是必须的,但par2
是可选的。如果您使用par2
,则需要逗号,所以这就是为什么它包含在大括号中。