Heim  >  Artikel  >  Web-Frontend  >  ||. und && Verwendung in JavaScript (ausführliche Erklärung)

||. und && Verwendung in JavaScript (ausführliche Erklärung)

青灯夜游
青灯夜游nach vorne
2018-10-08 14:49:502157Durchsuche

&& und || werden besonders häufig im JQuery-Quellcode verwendet. Ich habe einige Beispiele im Internet als Referenz gefunden und ihre Verwendung untersucht:

&&

function a(){
    alert("a");
    return true;
}
function b(){
    alert("b");
    return true;
}
var c=a()&&b();
alert(c);

a() && b(): Wenn nach der Ausführung von a() true zurückgegeben wird, wird b() ausgeführt und der Wert von b wird zurückgegeben, wenn nach der Ausführung von a() false zurückgegeben wird Der gesamte Ausdruck wird zurückgegeben. Der Wert von a(), b() wird nicht ausgeführt.

||

function a(){
    alert("a");
    return true;
}
function b(){
    alert("b");
    return false;
}
var c=a()||b();
alert(c);

a() || b(): Wenn nach a() true zurückgegeben wird, gibt der gesamte Ausdruck den Wert von a() zurück, und b() wird nicht ausgeführt. Wenn nach a() false zurückgegeben wird, wird b() ausgeführt der Wert von b() wird zurückgegeben;

&& hat eine höhere Priorität als ||

alert((1 && 3 || 0) && 4 ); //Ergebnis 4 ①
alert(1 && 3 || 0 && 4); //Ergebnis 3 ②
alert(0 && 3 || 1 && 4); //Ergebnis 4 ③

Analyse:
Anweisung ①: 1&&3 Rückgabe 3 => 3 || 0 gibt 3 zurück => 3&&4 gibt 4 zurück Vergleichen Sie schließlich die Ausführungsergebnisse mit 3||0. Geben Sie 3 zurück
Anweisung ③: Die erste Ausführung von 0&&3 gibt 0 zurück, die Ausführung von 1&&4 gibt 4 zurück, und das endgültige Ausführungsergebnis wird mit 0||4 verglichen und gibt 4 zurück

Hinweis: Alle Ganzzahlen ungleich 0 sind wahr, undefiniert, null und leere Zeichenfolgen „“ sind falsch.

In Javascript kann && nicht nur für boolesche Typen verwendet werden, noch können nur Ergebnisse vom booleschen Typ zurückgegeben werden.
l Wenn der erste Operand vom Typ Boolean ist und der Wert falsch ist, geben Sie direkt false zurück.
l Wenn der erste Operand vom Typ Boolean ist und der Wert wahr ist und der andere Operand vom Typ Objekt ist, wird dieses Objekt zurückgegeben.
l Wenn beide Operanden vom Typ Objekt sind, wird das zweite Objekt zurückgegeben.
l Wenn einer der Operanden null ist, wird null zurückgegeben.
l Wenn einer der Operanden NaN ist, wird NaN zurückgegeben.
l Wenn ein Operand undefiniert ist, wird undefiniert zurückgegeben.

alert(false && alice); // false 
alert(true && alice); // alice 
alert(alice && smith); // smith 
alert(smith && alice); // alice 
alert(null && alice); // null 
alert(NaN && alice); // NaN 
alert(undefined && alice); // undefined 
alert(alice && undefined); // undefined

Für || wird es auch nicht nur für den booleschen Typ verwendet und gibt auch nicht nur ein boolesches Ergebnis zurück.

Tatsächlich werden null, undefiniert und NaN als falsch behandelt. Und das Objekt wird als wahr behandelt.

l Wenn der erste Operand vom Typ Boolean ist und der Wert wahr ist, dann geben Sie direkt wahr zurück.
l Wenn der erste Operand vom Typ Boolean ist und der Wert falsch ist und der zweite Operand ein Objekt ist, wird das Objektobjekt zurückgegeben.
l Wenn beide Operanden vom Objekttyp sind, wird das erste Objekt zurückgegeben.
l Wenn beide Operanden null sind, wird null zurückgegeben.
l Wenn beide Operanden NaN sind, geben Sie NaN zurück.
l Wenn beide Operanden undefiniert sind, wird undefiniert zurückgegeben.

alert(false || alice);     // alice
alert(true || alice);     // true
alert(alice || smith);     // alice
alert(smith || alice);     // smith
alert(null || alice);     // alice
alert(alice || null);     // alice
alert(null || null);     // null
alert(NaN || alice);      // alice
alert(alice || NaN);      // alice
alert(NaN || NaN);       // NaN
alert(undefined || alice);   // alice
alert(alice || undefined);   // alice
alert(undefined || undefined); // undefined

Sie müssen es nicht so kompliziert machen. Ich empfehle Ihnen, diesen Teil der Erklärung zu lesen

a && b: Konvertieren Sie a, b in einen booleschen Typ und führen Sie dann ein logisches UND aus. Geben Sie b zurück, wenn wahr, und geben Sie a zurück, wenn falsch.
a || ODER, true gibt a zurück, false gibt b zurück

Konvertierungsregeln:
Objekt ist wahr
Zahl ungleich Null ist wahr
Nicht leere Zeichenfolge ist wahr
Andere sind falsch

Das Obige ist der gesamte Inhalt dieses Kapitels. Weitere verwandte Tutorials finden Sie unter JavaScript-Video-Tutorial!

Das obige ist der detaillierte Inhalt von||. und && Verwendung in JavaScript (ausführliche Erklärung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen