📅  最后修改于: 2023-12-03 15:01:46.547000             🧑  作者: Mango
在 JavaScript 中,我们可以通过给参数设置默认值来避免传递的参数为 undefined,例如:
function myFunction(name = 'World') {
console.log(`Hello, ${name}!`);
}
myFunction(); // Hello, World!
myFunction('John'); // Hello, John!
当我们调用 myFunction 函数时,如果没有传递任何参数,name 参数将采用默认值 'World'。但是,有时候我们可能希望跳过默认参数,怎么办呢?请继续阅读。
跳过默认参数的一种简单方法是传递 undefined 值作为参数,例如:
function myFunction(name = 'World') {
console.log(`Hello, ${name}!`);
}
myFunction(); // Hello, World!
myFunction(undefined); // Hello, World!
myFunction('John'); // Hello, John!
当我们传递 undefined 作为参数时,该参数将不会采用默认值,而是接受 undefined 值。
另一种跳过默认参数的方法是传递 null 值作为参数,例如:
function myFunction(name = 'World') {
console.log(`Hello, ${name}!`);
}
myFunction(); // Hello, World!
myFunction(null); // Hello, null!
myFunction('John'); // Hello, John!
当我们传递 null 作为参数时,该参数将被赋值为 null,不会采用默认值。
还有一种跳过默认参数的方法是使用剩余参数,例如:
function myFunction(name = 'World', ...rest) {
if (name === undefined) {
console.log('Hello, no name!');
} else {
console.log(`Hello, ${name}!`);
}
console.log(rest);
}
myFunction(); // Hello, no name! \n []
myFunction('John'); // Hello, John! \n []
myFunction('John', 'Doe', 30); // Hello, John! \n ['Doe', 30]
当我们调用 myFunction 函数时,第一个参数将采用默认值 'World'。但是,通过使用剩余参数,我们可以获取除第一个参数外的任意数量的参数,并在必要时处理它们。如果第一个参数为 undefined,则我们可以选择在函数体内处理它。
以上是在 JavaScript 中跳过默认参数的一些方法。您可以根据实际情况选择最适合您的方法。