Flash Lite 2 |
|||
| Guide de référence du langage ActionScript Flash Lite 2.x > Eléments du langage ActionScript > Opérateurs > Opérateur || (OR logique) | |||
expression1 || expression2
Evalue expression1 (l'expression située à gauche de l'opérateur) et renvoie true si cette expression est true. Si expression1 renvoie false, expression2 (l'expression située à droite de l'opérateur) est évaluée. Si expression2 renvoie false, le résultat final est false. Sinon, le résultat est true.
Si vous utilisez un appel de fonction en tant qu'expression2, la fonction ne sera pas exécutée par cet appel si expression1 renvoie true.
Le résultat est truetrue si l'une des expressions, voire les deux, renvoie(nt) true. Le résultat est false si et uniquement si les deux expressions renvoient false. Vous pouvez utiliser l'opérateur OR logique avec autant d'opérandes que nécessaire. Si l'un des opérandes renvoie true, le résultat est true.
Disponibilité : ActionScript 1.0 ; Flash Lite 1.0
expression1 : Number - Valeur booléenne ou une expression qui se convertit en valeur booléenne.
expression2 : Number - Valeur booléenne ou une expression qui se convertit en valeur booléenne.
Boolean - Résultat de l'opération logique.
L'exemple suivant utilise l'opérateur OR logique ||) dans une instruction if. La deuxième expression renvoie true, par conséquent, le résultat final est true :
var x:Number = 10;
var y:Number = 250;
var start:Boolean = false;
if ((x > 25) || (y > 200) || (start)) {
trace("the logical OR test passed"); // Renvoie : le résultat du test OR logique
}
Le message « the logical OR test passed » apparaît car l'une des conditions de l'instruction if est true (y>200). Bien que les deux autres expressions renvoient false, tant qu'une condition renvoie true, le bloc if s'exécute .
L'exemple suivant illustre la façon dont des résultats inattendus peuvent être obtenus si vous utilisez un appel de fonction en tant qu'expression2. Si l'expression située à gauche de l'opérateur renvoie true, ce résultat est renvoyé sans évaluer l'expression située à droite (la fonction fx2() n'est pas appelée).
function fx1():Boolean {
trace("fx1 called");
return true;
}
function fx2():Boolean {
trace("fx2 called");
return true;
}
if (fx1() || fx2()) {
trace("IF statement entered");
}
/* Les informations suivantes sont transmises au panneau Sortie :
/* Les informations suivantes sont transmises au fichier journal : fonction fx1 appelée, instruction IF entrée */
Opérateur ! NOT logique, Opérateur != (inégalité), Opérateur !== d'inégalité stricte, Opérateur && (AND logique), Opérateur == (égalité), Opérateur === d'égalité stricte