Frage

Bei der Kombination Zuordnung mit Komma (etwas, das Sie nicht tun sollten, wahrscheinlich), wie funktioniert Javascript bestimmen, welcher Wert zugewiesen wird? Betrachten Sie diese zwei Schnipsel:

function nl(x) { document.write(x + "<br>"); }
var i = 0;
nl(i+=1, i+=1, i+=1, i+=1);
nl(i);

Und:

function nl(x) { document.write(x + "<br>"); }
var i = 0;
nl((i+=1, i+=1, i+=1, i+=1));
nl(i);

Die ersten Ausgänge

1
4

, während die zweiten Ausgänge

4
4

Was sind die Klammern hier?

War es hilfreich?

Lösung

Ich war verwirrend zwei Dinge, hier. Der erste Aufruf von ‚nl‘ ist ein Funktionsaufruf mit vier Argumenten. Die zweite ist die Auswertung des Kommas in ein Argument.

So lautet die Antwort: der Wert einer Liste von Ausdrücken durch '' getrennt ist die Wert des letzten Ausdrucks .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top