Beeinflusst die Syntax (Whitespace) einer JavaScript-Funktion das Ergebnis? [Duplikat]

Diese Frage hat hier bereits eine Antwort:

Welche Regeln gelten für das automatische Einfügen von Semikolons (ASI) in JavaScript? 4 Antworten

Beim Schreiben einer Javascript-Funktion zur Bewertung einer Multi-Variate-Bedingung bin ich auf einen scheinbaren Parser-Fehler in Javascript gestoßen. Bitte lassen Sie mich wissen, ob ich etwas vergessen habe oder ob dies angemessen ist.

In meiner Funktion gebe ich das zurückAND Ergebnis mehrerer Variablen, wie so:

return
// a comment, for kicks
a1 && a2
&&
b1 && b2
&&
// another comment
c1 && c2
&&
d1 && d2
;

Selbst wenn alle diese Variablen den expliziten Wert von habentruekehrt die Funktion zurückundefined statt der erwartetentrue.

Ich habe verschiedene Varianten des Zurückgebens dieses Ausdrucks ausprobiert und festgestellt:

mehrzeiliger Ausdruck -scheitertAusdruck in einer Zeile -funktioniertAusdruck in Parethesen verpacken -funktioniertSetzen von mehrzeiligen Ausdrücken aufVariableund kehre dann zurückVariable -funktioniert

Siehe Arbeitsbeispiele:http://jsfiddle.net/drzaus/38DgX/

Kann jemand erklären, warum dies passiert?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage