所有参数都必须包含在Javascript函数调用中吗?

时间:2014-04-26 02:42:55

标签: javascript syntax

如果你有一个功能

function myFunc(a,b,c)
{
    if(c) alert("c got here!");
}

每次打电话给你的func都必须像

myFunc(1,2,3)

或者某些电话只是

是否可以
myFunc(1,2)

我发现后者有效,但我想知道它是否适用于所有浏览器。

感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

您不必包含每个参数,但必须使用前两个如果您需要使用第三个。

如果函数签名有3个参数,并且在调用它时只提供2个,那么第三个参数将在函数内计算为undefined

如果需要,您还可以在函数内部提供默认值:

function doStuff(a, b, c) {
    // if c is not defined, use default value
    c = (typeof c === 'undefined') ? 3.14 : c;
    //...
}