📜  javascript 跳过默认参数 - Javascript (1)

📅  最后修改于: 2023-12-03 15:01:46.547000             🧑  作者: Mango

JavaScript 跳过默认参数

在 JavaScript 中,我们可以通过给参数设置默认值来避免传递的参数为 undefined,例如:

function myFunction(name = 'World') {
  console.log(`Hello, ${name}!`);
}

myFunction();    // Hello, World!
myFunction('John');    // Hello, John!

当我们调用 myFunction 函数时,如果没有传递任何参数,name 参数将采用默认值 'World'。但是,有时候我们可能希望跳过默认参数,怎么办呢?请继续阅读。

使用 undefined 跳过默认参数

跳过默认参数的一种简单方法是传递 undefined 值作为参数,例如:

function myFunction(name = 'World') {
  console.log(`Hello, ${name}!`);
}

myFunction();    // Hello, World!
myFunction(undefined);    // Hello, World!
myFunction('John');    // Hello, John!

当我们传递 undefined 作为参数时,该参数将不会采用默认值,而是接受 undefined 值。

使用 null 跳过默认参数

另一种跳过默认参数的方法是传递 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 中跳过默认参数的一些方法。您可以根据实际情况选择最适合您的方法。