В JavaScript можно передавать параметры функции по умолчанию и опциональные параметры вместе, используя различные подходы.
Первый подход - использование условных выражений внутри функции. Например, мы хотим создать функцию, которая будет принимать два параметра - имя и возраст, при этом возраст должен быть опциональным параметром со значением по умолчанию равным 0. Мы можем сделать это следующим образом:
function greet(name, age) { if (age === undefined) { age = 0; } console.log("Привет, " + name + ", тебе " + age + " лет!"); }
В данном случае мы проверяем, если параметр age не был передан функции, то устанавливаем ему значение 0.
Второй подход - использование оператора слияния с помощью знака =. Этот подход является более новым и удобным. Для нашего примера мы можем написать следующий код:
function greet(name, age = 0) { console.log("Привет, " + name + ", тебе " + age + " лет!"); }
В данном случае, если параметр age не будет передан функции, то ему будет установлено значение по умолчанию, указанное после знака "=".
Оба подхода являются корректными в JavaScript и вы можете использовать любой из них в зависимости от предпочтений и требований вашего проекта.