Есть несколько способов сделать это в javascript.
Вероятнее всего, наиболее читаемым и гибким является:
if (a){
//b
}
else {
//c
}
Что-то еще, что * работает только с присваиванием и менее читабельно:
var foo = 'c';
if (a){
foo = 'b';
}
Мой главный вопрос, однако, о двух последних методах, которые я могу придумать:
var foo = a ? b : c;
var foo = a && b || c;
Есть ли различия между этими двумя выражениями? Кроме читабельности, которой не хватает обоим.
* хотя вы могли бы назначить функцию foo функцией, а затем выполнить ее после оператора if.