假设我有一个包含三个参数的函数,其中 2 个参数具有默认值:
function f(a, b=2, c=3){
console.log(a, b, c)
}
如果我对 b
非常满意的值,有没有办法调用 f
并为 c
指定一个值直接?
在 Python 中我会做类似 f(1, c=5)
的事情?
用例:如果我不知道b
的默认值,或者如果有更多的参数,那么不能做这样的事情会很麻烦
最佳答案
is there a way to call
f
and specify a value forc
directly?
不,JavaScript 没有那种命名参数。
您可以通过给 undefined
使用 b
的默认值来调用 f
:
f(1, undefined, 5);
function f(a, b = 2, c = 3){
console.log(a, b, c)
}
f(1, undefined, 5);
或者,您可以不同地定义 f
:让它接受一个对象,然后将其解构为参数,然后用一个对象调用它:
function f({a, b = 2, c = 3}){
console.log(a, b, c)
}
f({a: 1, c: 5});
如果您希望在没有对象的情况下调用它是有效的(上面的错误),请为解构参数提供默认值:
function f({a, b = 2, c = 3} = {}){
// -------------------------^^^^^
console.log(a, b, c)
}
关于javascript - 指定第二个默认参数 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53376295/