Задать вопрос
@zwezew

Как передать в функцию первое и третье значение?

Например, есть function (a1, a2, a3) {}
Как передать в нее только a1 и a3, оставив второе значение не заданным?
  • Вопрос задан
  • 176 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Stepik
    Пакет курсов JavaScript и React разработчика
    3 месяца
    Далее
Решения вопроса 3
Можно так:
f(a, '', c);

Или сделать обработчик в самой функции:
function f(a, b, c) {
    c = c === undefined ? b : c

    console.log(c);
}

f(1, 3) // 3
f(1, 2, 3) // 3
Ответ написан
Комментировать
Stimulate
@Stimulate
могу
function (a1, '', a3)

не?
Ответ написан
Комментировать
0xD34F
@0xD34F Куратор тега JavaScript
Никак.

Отсутствующее значение это undefined, его и указывайте (или, если хотите, можете рассматривать в качестве незаданного любое другое - null, 0, ещё что-то - решайте сами).

Можно поменять местами второй и третий параметр, и задать бывшему второму значение по умолчанию.

А вообще, если нужна возможность выборочной передачи параметров, объедините их в один - пусть это будут свойства объекта:

function f({ a, b, c }) {
  console.log(a, b, c);
}

f({ b: 9, c: 5 }); // undefined 9 5

Если надо, каждый может иметь значение по умолчанию:

function f({ a = 1, b = 2, c = 3 } = {}) {
  console.log(a, b, c);
}

f({ a: 100, c: 300 }) // 100 2 300
f({ b: -1 }) // 1 -1 3
f() // 1 2 3
f({ a: 0, b: 0, c: 0 }) // 0 0 0
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
teknik2008
@teknik2008
Расскажите про GOLANG. Мне интересно
function f(a, b, c=b) {
  console.log(a, b, c);
}
f(1,2,3)//1 2 3
f(1,2)//1 2 2
Ответ написан
Комментировать
@sHARek
function abc(a1,a2=false,a3){
    console.log(a1 + a3);
}
abc(1,5,2); //получаем 3


Может как то так =)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы