|| logischer OR-Operator

expression1 || expression2

Wertet expression1 (den Ausdruck links vom Operator) aus und gibt true zurück, wenn der Ausdruck den Wert true ergibt. Ergibt expression1 den Wert false, wird expression2 (der Ausdruck rechts vom Operator) ausgewertet. Ergibt expression2 den Wert false, lautet das Endergebnis false, andernfalls true.

Wenn ein Funktionsaufruf als expression2 verwendet wird, kann die Funktion dieses Aufrufs nicht ausgeführt werden, solange expression1 den Wert true ergibt.

Das Ergebnis ist true, wenn ein oder beide Ausdrücke den Wert true ergeben, und nur dann false, wenn beide Ausdrücke den Wert false ergeben. Sie können den logischen OR-Operator mit einer beliebigen Anzahl von Operanden verwenden. Wenn einer der Operanden true ergibt, lautet das Ergebnis ebenfalls true.

Verfügbarkeit: ActionScript 1.0, Flash Lite 1.0

Operanden

expression1 : Number - Ein boolescher Wert oder ein Ausdruck, der in einen booleschen Wert umgewandelt wird.

expression2 : Number - Ein boolescher Wert oder ein Ausdruck, der in einen booleschen Wert umgewandelt wird.

Rückgabewerte

Boolean - Das Ergebnis der logischen Operation.

Beispiel

Im folgenden Beispiel wird der logische OR-Operator (||) in einer if-Anweisung verwendet. Der zweite Ausdruck wird als true ausgewertet, sodass das Endergebnis ebenfalls true lautet:

var x:Number = 10;
var y:Number = 250;
var start:Boolean = false;
if ((x > 25) || (y > 200) || (start)) { 
 trace("the logical OR test passed"); // Ausgabe: the logical OR test passed
} 

Es wird die Meldung "the logical OR test passed" angezeigt, da eine der Bedingungen in der if-Anweisung den Wert true ergibt (y>200). Die beiden anderen Ausdrücke ergeben zwar false, wenn jedoch nur eine der Bedingungen true ergibt, wird der if-Block ausgeführt.

Das folgende Beispiel veranschaulicht, wie die Verwendung eines Funktionsaufrufs für expression2 zu unerwarteten Ergebnissen führen kann. Wenn der Ausdruck links neben dem Operator true ergibt, wird dieses Ergebnis ohne die Auswertung des Ausdrucks auf der rechten Seite zurückgegeben (d. h. die Funktion fx2() wird nicht aufgerufen).

function fx1():Boolean {
 trace("fx1 called");
 return true;
} 
function fx2():Boolean {
 trace("fx2 called");
 return true;
} 
if (fx1() || fx2()) {
 trace("IF statement entered");
} 
/* Folgendes wird an das Bedienfeld "Ausgabe" gesendet: /* Folgendes wird an die Protokolldatei gesendet: fx1 called IF statement entered */

Siehe auch

! logischer NOT-Operator, != Ungleichheits-Operator, !== Strikter Ungleichheits-Operator, && logischer AND-Operator, == Gleichheits-Operator, === Strikter Gleichheits-Operator