Es gibt eine JS -Interviewfrage, die Frage lautet wie folgt: Was ist das Ausführungsergebnis des folgenden Code und warum?
Die Codekopie lautet wie folgt:
var i, j, k;
für (i = 0, j = 0; i <10, j <6; i ++, j ++) {
k = i+j;
}
document.write (k);
Die Antwort ist, 10 zu zeigen. Diese Frage untersucht hauptsächlich den Komma -Betreiber von JavaScript.
Hier ist die Definition des Komma -Betreibers von MDN:
Der Komma -Betreiber berechnet zwei Operanden (von links nach rechts) und gibt den Wert des zweiten Operanden zurück.
Nach dieser Definition können Sie es erweitern:
Der Komma -Betreiber berechnet zwei oder mehr Operanden von links nach rechts und gibt den Wert des letzten Operanden zurück.
Sie können den folgenden Code spüren:
Die Codekopie lautet wie folgt:
Alarm ((0, 9));
Alarm ((9, 0));
if (0,9) alert ("ok");
if (9,0) alarm ("ok");
Welche Rolle spielt die Komma -Betreiber im tatsächlichen Code?
1. Austauschvariablen ohne dritte Variable
Die Codekopie lautet wie folgt:
var a = "a", b = "b";
// Methode 1
a = [b] [b = a, 0];
// Methode 2
a = [b, b = a] [0];
2. Vereinfachen Sie den Code
Die Codekopie lautet wie folgt:
if (x) {
foo ();
return bar ();
}
anders{
Rückkehr 1;
}
Kann abgekürzt werden als:
Die Codekopie lautet wie folgt:
Rückkehr x?