English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Die Priorität der Operatoren bestimmt, wie sie miteinander operiert werden.
Operatoren mit höherer Priorität werden zu Operanden von Operatoren mit niedrigerer Priorität.
In dem folgenden Beispiel hat die Multiplikation eine höhere Priorität als die Addition, was die Ergebnisse der Operationen bestimmt.
// Zuerst wird3multiplizieren5, dann addieren10 var x = 10 + 3 * 5;Testen Sie, ob‹/›
Ganz anders, wenn wir die Addition vorziehen möchten, dann sollten wir sie in Klammern gruppieren, die immer die höchste Priorität haben.
// Zuerst wird10und3Zuerst addieren, dann multiplizieren5 var x = (10 + 3) * 5;Testen Sie, ob‹/›
Bei der Verwendung von Klammern wird zuerst der Ausdruck innerhalb der Klammern berechnet.
Wenn viele Operationen die gleiche Priorität haben (z.B. Addition und Subtraktion), werden sie von links nach rechts berechnet:
var x = 10 + 3 - 5;Testen Sie, ob‹/›
Die Ausdrucksbewertung wird auch durch die Assoziativität der Operatoren beeinflusst.
Die Assoziativität bezieht sich auf die Richtung der Ausdrucksbewertung (von rechts nach links oder von links nach rechts).
Wenn in einem Ausdruck zwei oder mehrere Operatoren mit gleicher Priorität vorkommen, wird zuerst einer von ihnen berechnet? Die Assoziativität beantwortet diese Frage.
Bitte beziehen Sie sich auf die nachstehende Tabelle, um alle mit JavaScript verbundenen oder Prioritätsprobleme zu lösen
Operator | Verwendung Beschreibung | Operator-Kombination | Operator-Präzedenz |
---|---|---|---|
() | Methode/Funktionsaufruf, Gruppierung | Von links nach rechts | Höchst- 1 |
[] | Arrayabfrage | Von links nach rechts | 1 |
. | Objektkategoriezugriff | Von links nach rechts | 1 |
++ | Erhöhen | Von rechts nach links | 2 |
-- | Verringern | Von rechts nach links | 2 |
- | Subtraktion | Von rechts nach links | 2 |
! | Logische Negation | Von rechts nach links | 2 |
~ | Bitweise Negation | Von rechts nach links | 2 |
delete | Werte aus dem Array oder die Eigenschaft des Objekts löschen | Von rechts nach links | 2 |
new | Ein Objekt erstellen | Von rechts nach links | 2 |
typeof | Daten Typ zurückgeben | Von rechts nach links | 2 |
void | Wert nicht angeben | Von rechts nach links | 2 |
/ | Division | Von links nach rechts | 3 |
* | Multiplikation | Von links nach rechts | 3 |
% | Modulo | Von links nach rechts | 3 |
+ | Addition | Von links nach rechts | 4 |
+ | Stringverbindung | Von links nach rechts | 4 |
- | Subtraktion | Von links nach rechts | 4 |
>> | Bitweise Rechtsverschiebung | Von links nach rechts | 5 |
<< | Bitweise Linksverschiebung | Von links nach rechts | 5 |
>, >= | Größer, größer als oder gleich | Von links nach rechts | 6 |
<, <= | Kleiner, kleiner als oder gleich | Von links nach rechts | 6 |
== | Gleich | Von links nach rechts | 7 |
!= | Ungleich | Von links nach rechts | 7 |
=== | Übereinstimmung/Streng gleich (gleiche Datentypen) | Von links nach rechts | 7 |
!== | Unübereinstimmung/Streng ungleich (verschiedene Datentypen) | Von links nach rechts | 7 |
& | Bitweise Und | Von links nach rechts | 8 |
^ | Bitweise Exklusives Oder | Von links nach rechts | 9 |
| | Bitweise Oder | Von links nach rechts | 10 |
&& | Logisches Und | Von links nach rechts | 11 |
|| | Logisches Oder | Von links nach rechts | 12 |
?: | Bedingte Zweigverteilung | Von links nach rechts | 13 |
= | Zuweisung | Von rechts nach links | 14 |
*=, /=, %=, +=,, -=, <<=, >>=, >>>=, &=, ^=, |= | Verteilung nach vorangegangenen Operatoren | Von rechts nach links | 14 |
, | Mehrfachbewertung | Von links nach rechts | Minimum:15 |