Логические операторы в return
Расскажите, пожалуйста, про логику в return (или подскажите где искать). Я не раз натыкался на на код типа
return a || b;
return a >= 0;
Ответы (1 шт):
Автор решения: Александр Лесив
→ Ссылка
Это два разных случаях. В первом варианте вернется значение переменной a или b, а во втором булевое значение выражения a >= b. Рассмотрим оба варианта поподробнее
function example(a, b){
// Если a не нулевое значение(false, 0, '', undefined, null, NaN), то вернет значение переменной а
// В противном случае вернет значение переменной b
return a || b
}
// Вернет 5, так как первое значение нулевое
var ex1 = example(null, 5)
console.log(ex1)
// Вернет "Пример" так как первое значение не нулевое
var ex2 = example("Пример", 5)
console.log(ex2)
function isMoreOrEqual(a, b){
// Всегда будет возвращать булевое значение true или false в зависимости от истинности выражение
return a >= b
}
// Вернет false, так как 5 не больше или равно 6
var ex3 = isMoreOrEqual(5, 6)
console.log(ex3)
// Вернет true, так как 6 больше или равно 5
var ex4 = isMoreOrEqual(6, 5)
console.log(ex4)