Короткая троичная логика - PullRequest
3 голосов
/ 02 декабря 2011

Есть ли более короткий способ использования логики ternary в js, когда else равен "null" ?

true ? console.log(true) :0; // current

Яищу что-то вроде

true ? console.log(true);
//or
true ?: console.log(true);

Просто любопытно .Спасибо!

1 Ответ

6 голосов
/ 02 декабря 2011

Попробуйте это:

true && console.log(true);

Это работает, потому что && превращает это выражение в логическое значение.JavaScript попытается это оценить.Если первое значение равно false, из-за короткого замыкания ничего не происходит.Если это правда, тогда он оценивает второй (console.log).

Вы также можете использовать || как быстрый способ сделать empty в JavaScript (остерегайтесь значений Falsey, таких как 0и '').

var a = false;
var b = a || 6; // b will be 6
...