我希望能够在 JavaScript 中做到这一点:
function myFunction(one, two = 1) {
// code
}
myFunction("foo", "2");
myFunction("bar");
我试过这个,但它不起作用。我不知道如何调用这种类型的参数,有人能指出我正确的方向吗?
谢谢。
我希望能够在 JavaScript 中做到这一点:
function myFunction(one, two = 1) {
// code
}
myFunction("foo", "2");
myFunction("bar");
我试过这个,但它不起作用。我不知道如何调用这种类型的参数,有人能指出我正确的方向吗?
谢谢。
function foo(a, b)
{
a = typeof a !== 'undefined' ? a : 42;
b = typeof b !== 'undefined' ? b : 'default_b';
//...
}
function myFunction(one, two) {
two = two || 1
}
更准确地说,例如,当两个为零时,它可能不起作用,请检查 null 或未定义,例如
if (typeof two === "undefined") two = 1
用这个 :
function myFunction(one, two) {
if (typeof two == 'undefined') two = 1;
...
}
注意不要犯常见的错误
two = two || 1;
因为这不允许您提供""
或0
.
尝试:
if ( typeof two === "undefined" ) two = 2;
或者
two = typeof two !== "undefined" ? two : 2;
未定义的参数将具有 value undefined
,这是一个“虚假”值。我们可以测试这种虚假性,并相应地更改值。