Logische JavaScript-Operatoren

Logische Operatoren vergleichen Boolesche Werte und geben eine Boolesche Antwort zurück. Es gibt zwei Arten von logischen Operatoren: Logisches UND und Logisches ODER. Diese Operatoren werden häufig als && für AND und || geschrieben für OR.

Logisches UND (&&)

Der AND-Operator vergleicht zwei Ausdrücke. Wenn der erste Wert als "wahr" ausgewertet wird, gibt die Anweisung den Wert des zweiten Ausdrucks zurück. Wenn der erste Wert als "falsch" ausgewertet wird, gibt die Anweisung den Wert des ersten Ausdrucks zurück.

Wenn nur boolesche Werte (entweder trueoder false) verwendet werden, wird true zurückgegeben, wenn nur beide Ausdrücke true sind. Wenn einer oder beide Ausdrücke falsch sind, gibt die gesamte Anweisung false zurück.

true && true //returns the second value, true true && false //returns the second value, false false && false //returns the first value, false 123 && 'abc' // returns the second value, 'abc' 'abc' && null //returns the second value, null undefined && 'abc' //returns the first value, undefined 0 && false //returns the first value, 0

Logisches ODER (||)

Der OR-Operator vergleicht zwei Ausdrücke. Wenn der erste als "falsch" ausgewertet wird, gibt die Anweisung den Wert des zweiten zweiten Ausdrucks zurück. Wenn der erste Wert als "wahr" ausgewertet wird, gibt die Anweisung den Wert des ersten Ausdrucks zurück.

Wenn nur boolesche Werte (entweder trueoder false) verwendet werden, wird true zurückgegeben, wenn einer der Ausdrücke true ist. Beide Ausdrücke können wahr sein, aber nur einer wird benötigt, um wahr zu werden.

true || true //returns the first value, true true || false //returns the first value, true false || false //returns the second value, false 123 || 'abc' // returns the first value, 123 'abc' || null //returns the first value, 'abc' undefined || 'abc' //returns the second value, 'abc' 0 || false //returns the second value, false

Kurzschlussauswertung

&& und || sich als Kurzschlussbetreiber verhalten.

Im Fall des logischen UND wird, wenn der erste Operand false zurückgibt, der zweite Operand niemals ausgewertet und der erste Operand zurückgegeben.

Wenn im logischen ODER der erste Wert true zurückgibt, wird der zweite Wert niemals ausgewertet und der erste Operand zurückgegeben.

Logisch NICHT (!)

Der Operator NOT führt keinen Vergleich wie die Operatoren AND und OR durch. Außerdem wird er nur mit einem Operanden betrieben.

Ein '!' (Ausrufezeichen) wird zur Darstellung des Operators NOT verwendet.

Verwendung von NOT-Operatoren

  1. Umwandlung des Ausdrucks in einen Booleschen Wert.
  2. Gibt die Umkehrung des im letzten Schritt erhaltenen Booleschen Werts zurück.
var spam = 'rinki'; //spam may be equal to any non empty string var booSpam = !spam; /*returns false since when a non-empty string when converted to boolean returns true inverse of which is evaluated to false. */ var spam2 = ''; //spam2 here is equal to empty string var booSpam2 = !spam2; /*returns true since when a empty string when converted to boolean returns false inverse of which is evaluated to true. */

Tipps:

Beide logischen Operatoren geben den Wert des zuletzt ausgewerteten Ausdrucks zurück. Zum Beispiel:

"cat" && "dog" //returns "dog" "cat" && false //returns false 0 && "cat" //returns 0 (which is a falsy value) "cat" || "dog" //returns "cat" "cat" || false //returns "cat" 0 || "cat" //returns "cat"

Beachten Sie, dass wo &&den ersten Wert ||zurückgibt, der zweite Wert zurückgegeben wird und umgekehrt.