Springen zu:

Die Operator Priorität bestimmt in welcher Reihenfolge Operatoren ausgeführt werden. Operatoren, die in der Rangfolge zuerst kommen werden auch zuerst ausgeführt.

Assoziativität

Assoziativität bestimmt in welcher Reihenfolge Operatoren der selben Rangfolge ausgeführt werden. Betrachten wir als Beispiel den folgenden Ausdruck:

a OP b OP c

Linksassoziativ (links nach rechts) bedeutet, dass der Code als (a OP b) OP c ausgeführt wird, während rechtssassoziativ (rechts nach links) heißt, dass der Code wie a OP (b OP c) ausgeführt wird. Zuordnungs Operatoren sind rechtssassoziativ, also kann man schreiben:

a = b = 5;

mit dem erwarteten Resultat, dass sowohl a als auch b den Wert 5 haben. Das liegt daran, dass Zuordnungsopertoren den Wert zurükgeben, den sie zuerst zugeordnet haben. Zuerst wird b auf 5 gesetzt. Daraufhin wird a auf 5, also den Rückgabewert von b = 5, gesetzt.

Tabelle

Die nachfolgende Tabelle geordnet von der höchsten (20) zur kleinsten (1) Priorität.

Priorität Operator Assoziativität Einzelner Operator
20 Gruppieren n/a ( … )
19 Eigenschaftszugriff links nach rechts … . …
Berechnete Eigenschaften Access links nach rechts … [ … ]
new (mit Argumentenliste) n/a new … ( … )
Funktionsaufruf links nach rechts … ( )
18 new (ohne Argumentenliste) rechts nach links new …
17 Postfix Inkrement n/a … ++
Postfix Dekrement … --
16 Logisches NICHT rechts nach links ! …
Bitweises NICHT ~ …
Unäres Plus + …
Unäres Minus - …
Prefix Inkrement ++ …
Prefix Dekrement -- …
typeof typeof …
void void …
delete delete …
await await …
15 Potenzierung rechts nach links … ** …
14 Multiplikation links nach rechts … * …
Division … / …
Rest … % …
13 Addition links nach rechts … + …
Subtraktion … - …
12 Bitweise Linksverschiebung links nach rechts … << …
Bitweise Rechtsverschiebung … >> …
Bitweise Vorzeichnelose Rechtsverschiebung … >>> …
11 Kleiner als links nach rechts … < …
Kleiner als oder gleich … <= …
Größer als … > …
Größer als oder gleich … >= …
in … in …
instanceof … instanceof …
10 Gleichheit links nach rechts … == …
Ungleichheit … != …
Strikte Gleichheit … === …
Strikte Ungleichheit … !== …
9 Bitweises UND links nach rechts … & …
8 Bitweises Exklusiv ODER (XOR) links nach rechts … ^ …
7 Bitweises ODER links nach rechts … | …
6 Logisches UND links nach rechts … && …
5 Logisches ODER links nach rechts … || …
4 Bedingt rechts nach links … ? … : …
3 Zuweisung rechts nach links … = …
… += …
… -= …
… **= …
… *= …
… /= …
… %= …
… <<= …
… >>= …
… >>>= …
… &= …
… ^= …
… |= …
2 yield rechts nach links yield …
yield* yield* …
1 Spread n/a ... …
0 Komma / Sequenz links nach rechts … , …

Schlagwörter des Dokuments und Mitwirkende

Schlagwörter: 
Mitwirkende an dieser Seite: Heronils, schlagi123, Karpfador, dcodeIO, LK-Reichl-F, wLikeFish
Zuletzt aktualisiert von: Heronils,