In JavaScript gibt es Ausdrücke und Anweisungen. Anweisungen können Ausdrücke enthalten, aber nicht umgekehrt. Die Anweisung true && false;
ist eine Ausdruckanweisung.
&&
erwartet zwei Ausdrücke.
Sowohl true
und (function() { ... })()
sind Ausdrücke - ein boolean Ausdruck true
Auswertung und eine Funktion Ausdruck (in Klammern eingewickelt und dann genannt) zu undefined
auswertet.
continue
ist eine Anweisung, so dass Sie &&
nicht verwenden können. Sie müssen if
verwenden, da if
eine Anweisung akzeptiert, die ausgeführt wird, wenn die Bedingung wahr ist.
Es ist korrektes Verhalten entsprechend der Spezifikation und sollte nicht V8-spezifisch sein.
Was würde jemals eine Verwendung dafür sein? Continue wird verwendet, um früh aus einer Schleife auszusteigen. Es ist kein boolescher Wert – jzworkman
[hier] (https://github.com/shichuan/javascript-patterns/blob/master/general-patterns/conditionals.html) siehe Zeile 125 – jakubmal
Dieses Beispiel ist völlig anders als die Verwendung von 'continue '. Obwohl es immer noch eine Anweisung ist und nicht wie unten beschrieben verwendet werden kann, würde die Verwendung von continue innerhalb einer booleschen Anweisung nie ausgeführt werden, nur um herauszufinden, warum Sie das als Beispiel verwendet haben, anstatt 'true && result ++' zu verwenden, was Ihr echtes Beispiel war . – jzworkman