Методы добавления необязательных параметров в функции JavaScript или TypeScript

Вот несколько способов добавления необязательных параметров в функцию JavaScript или TypeScript:

  1. Значения параметров по умолчанию. Параметрам функции можно присвоить значения по умолчанию с помощью оператора присваивания (=). Если параметр не указан, будет использоваться значение по умолчанию. Например:
function greet(name = 'Anonymous') {
  console.log(`Hello, ${name}!`);
}
greet(); // Output: Hello, Anonymous!
greet('John'); // Output: Hello, John!
  1. Деструктуризация объекта. Вместо передачи отдельных параметров вы можете передать объект и деструктурировать его внутри функции. Это позволяет вам указать только те свойства, которые вы хотите предоставить. Пример:
function greet({ name = 'Anonymous', age }) {
  console.log(`Hello, ${name}! Age: ${age}`);
}
greet({ name: 'John', age: 25 }); // Output: Hello, John! Age: 25
greet({ age: 30 }); // Output: Hello, Anonymous! Age: 30
  1. Использование объекта аргументов. В JavaScript вы можете получить доступ ко всем аргументам, передаваемым функции, с помощью объекта arguments. Это позволяет вам проверять количество аргументов и соответствующим образом обрабатывать необязательные параметры. Пример:
function greet() {
  const name = arguments[0] || 'Anonymous';
  console.log(`Hello, ${name}!`);
}
greet(); // Output: Hello, Anonymous!
greet('John'); // Output: Hello, John!
  1. Использование параметра Rest. Синтаксис параметра rest (...) позволяет представлять неопределенное количество аргументов в виде массива. Затем вы можете проверить длину массива, чтобы определить, были ли предоставлены необязательные параметры. Пример:
function greet(...args) {
  const name = args[0] || 'Anonymous';
  console.log(`Hello, ${name}!`);
}
greet(); // Output: Hello, Anonymous!
greet('John'); // Output: Hello, John!