Ruby Language Valeurs véridiques et fausses


Exemple

Dans Ruby, il y a exactement deux valeurs qui sont considérées comme "falsy", et qui retourneront false si elles sont testées comme condition pour une expression if . Elles sont:

  • nil
  • booléen false

Toutes les autres valeurs sont considérées comme "véridiques", notamment:

  • 0 - zéro numérique (entier ou autre)
  • "" - Chaînes vides
  • "\n" - Chaînes ne contenant que des espaces
  • [] - Tableaux vides
  • {} - Les hashes vides

Prenez, par exemple, le code suivant:

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", {})

Va sortir:

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