Ruby Language Valores de verdad y falsedad.


Ejemplo

En Ruby, hay exactamente dos valores que se consideran "falsos" y devolverán falso cuando se analicen como una condición para una expresión if . Son:

  • nil
  • booleano false

Todos los demás valores se consideran "veraces", incluidos:

  • 0 - cero numérico (entero o no)
  • "" - Cuerdas vacías
  • "\n" - Cadenas que contienen solo espacios en blanco
  • [] - Arreglos vacíos
  • {} - Hashes vacíos

Tomemos, por ejemplo, el siguiente código:

def check_truthy(var_name, var)
  is_truthy = var ? "truthy" : "falsy"
  puts "#{var_name} is #{is_truthy}"
end

check_truthy("false", false)
check_truthy("nil", nil)
check_truthy("0", 0)
check_truthy("empty string", "")
check_truthy("\\n", "\n")
check_truthy("empty array", [])
check_truthy("empty hash", {})

Saldrá:

false is falsy
nil is falsy
0 is truthy
empty string is truthy
\n is truthy
empty array is truthy
empty hash is truthy