Welcher Logikoperator hat Vorrang?

Daher möchte ich eine etwas komplexere Operation mit logischen Operatoren in einer if-else-Anweisung schreiben. Ich weiß, dass ich Klammern machen kann, und ich weiß, dass dies der bessere Weg ist, aber ich bin neugierig geworden und werde fragen. Wenn ich so etwas machen würde:

if (firstRun == true || selectedCategory != undefined && selectedState != undefined) {
//Do something
} else {
//Do something else
}

Wie funktioniert das ohne Verwendung von Klammern? Ich weiß, dass es eine Operationsreihenfolge für logische Operatoren gibt, ähnlich wie bei PEMDAS, oder? Ich bin gespannt, ob es so läuft:

firstRun == true || (selectedCategory != undefined && selectedState != undefined)

oder vielleicht, wenn der Operator 'OR' Vorrang hat und am Ende wie folgt lautet:

(firstRun == true || selectedCategory != undefined) && selectedState != undefined

Die vollständige Liste wäre schön, wenn Sie sie irgendwo in der Reihenfolge der Operationen finden könnten. Vielen Dank!

Antworten auf die Frage(6)

Ihre Antwort auf die Frage