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 AntwortenBeim 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 habentrue
kehrt 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 -funktioniertSiehe Arbeitsbeispiele:http://jsfiddle.net/drzaus/38DgX/
Kann jemand erklären, warum dies passiert?