- La condition est vraie si la valeur de la variable "x" est :
-- true ou "true" (non sensible à la casse)
-- "yes" (non sensible à la casse)
-- 1 ou "1"
- La condition est fausse si la valeur de la variable "x" est :
-- false ou "false" (non sensible à la casse)
-- "no" (non sensible à la casse)
-- ANY_NUMBER_EXCEPT_1 ou "ANY_NUMBER_EXCEPT_1" (par exemple : 0, -2, 38)
- La condition est vraie si la valeur de la variable "x" est :
-- false ou "false" (non sensible à la casse)
-- "no" (non sensible à la casse)
-- ANY_NUMBER_EXCEPT_1 ou "ANY_NUMBER_EXCEPT_1" (par exemple : 0, -2, 38)
- La condition est fausse si la valeur de la variable "x" est :
-- true ou "true" (non sensible à la casse)
-- "yes" (non sensible à la casse)
-- 1 ou "1"
- La condition est vraie si la valeur de la variable "x" est :
-- false ou "false" (non sensible à la casse)
-- "no" (non sensible à la casse)
-- 0 ou "0"
- La condition est fausse si la valeur de la variable "x" est :
-- true ou "true" (non sensible à la casse)
-- "yes" (non sensible à la casse)
-- ANY_NUMBER_EXCEPT_0 ou "ANY_NUMBER_EXCEPT_0" (par exemple : 1, -2, 38)
- La condition est vraie si la valeur de la variable "x" est :
-- true ou "true" (non sensible à la casse)
-- "yes" (non sensible à la casse)
-- ANY_NUMBER_EXCEPT_0 ou "ANY_NUMBER_EXCEPT_0" (par exemple : 1, -2, 38)
- La condition est fausse si la valeur de la variable "x" est :
-- false ou "false" (non sensible à la casse)
-- "no" (non sensible à la casse)
-- 0 ou "0"
Remarques :
- Si ColdFusion réussit à convertir les deux valeurs à comparer en numérique il effectuera une
comparaison numérique
(cela explique pourquoi la comparaison d'une chaîne de caractères « "false" » et une valeur booléenne ou numérique est possible).
- sinon, si la conversion échoue, ColdFusion va effectuer une comparaison standard entre deux chaînes de caractères
(cela explique pourquoi la comparaison des chaînes de caractères « "false" »
et « "TOTO" », ou « true » et « "ABC" » renvoient « false »).
Notes :
-
Il faut noter que la valeur numérique de true est 1 (pas 2, ni 5, ni aucune autre valeur numérique),
et celle de false est 0 (pas 2, ni 5, ni aucune autre valeur numérique),
d'où les résultats obtenus lorsqu'une comparaison numérique est effectuée.
-
Le contraire n'est pas tout à fait vrai,
car la valeur booléenne de 0 est false,
et celle de tous les autres numériques est true,
d'où les résultats obtenus lorsqu'une comparaison booléenne est effectuée.
-
Il faut noter aussi que la chaîne de caractères « "yes" » est convertie en valeur booléenne true, lorsqu'elle est utilisée dans une expression booléenne
(ou numérique 1, lorsqu'elle est utilisée dans une comparaison numérique ou opération arithmétique).
Et que la chaîne de caractères « "no" » est convertie en valeur booléenne false, lorsqu'elle est utilisée dans une expression booléenne
(ou numérique 0, lorsqu'elle est utilisée dans une comparaison numérique ou opération arithmétique).
Mais il ne faut pas les utiliser comme des littéraux yes et no dans des expressions (ce ne sont pas des mots clés).
Cependant, il est tout à fait correct de déclarer des variables dont le nom est yes ou no.