JavaScript -Arithmetik
JavaScript-Arithmetikoperatoren
Arithmetische Operatoren führen Arithmetik mit Zahlen (Literalen oder Variablen) durch.
Operator | Description |
---|---|
+ | Addition |
- | Subtraction |
* | Multiplication |
** | Exponentiation (ES2016) |
/ | Division |
% | Modulus (Remainder) |
++ | Increment |
-- | Decrement |
Rechenoperationen
Eine typische arithmetische Operation arbeitet mit zwei Zahlen.
Die beiden Zahlen können Literale sein:
Beispiel
let x = 100 + 50;
oder Variablen:
Beispiel
let x = a + b;
oder Ausdrücke:
Beispiel
let x = (100 + 50) * a;
Operatoren und Operanden
Die Zahlen (in einer arithmetischen Operation) werden als Operanden bezeichnet .
Die Operation (die zwischen den beiden Operanden ausgeführt werden soll) wird durch einen Operator definiert .
Operand | Operator | Operand |
---|---|---|
100 | + | 50 |
Hinzufügen
Der Additionsoperator ( +
) fügt Zahlen hinzu:
Beispiel
let x = 5;
let y = 2;
let z = x + y;
Subtrahieren
Der Subtraktionsoperator ( -
) subtrahiert Zahlen.
Beispiel
let x = 5;
let y = 2;
let z = x - y;
Multiplizieren
Der Multiplikationsoperator ( *
) multipliziert Zahlen.
Beispiel
let x = 5;
let y = 2;
let z = x * y;
Teilen
Der Divisionsoperator ( /
) dividiert Zahlen.
Beispiel
let x = 5;
let y = 2;
let z = x / y;
Rest
Der Modulo- Operator ( %
) gibt den Divisionsrest zurück.
Beispiel
let x = 5;
let y = 2;
let z = x % y;
In der Arithmetik ergibt die Division zweier ganzer Zahlen einen Quotienten und einen Rest .
In der Mathematik ist das Ergebnis einer Modulo-Operation der Rest einer arithmetischen Division.
Inkrementieren
Der Inkrementoperator ( ++
) erhöht Zahlen.
Beispiel
let x = 5;
x++;
let z = x;
Dekrementieren
Der Dekrementoperator ( --
) dekrementiert Zahlen.
Beispiel
let x = 5;
x--;
let z = x;
Potenzierung
Der Potenzierungsoperator ( **
) potenziert den ersten Operanden mit dem zweiten Operanden.
Beispiel
let x = 5;
let z =
x ** 2; // result is 25
x ** y erzeugt das gleiche Ergebnis wie Math.pow(x,y)
:
Beispiel
let x = 5;
let z =
Math.pow(x,2); // result is 25
Vorrang des Operators
Die Operatorpriorität beschreibt die Reihenfolge, in der Operationen in einem arithmetischen Ausdruck ausgeführt werden.
Beispiel
let x = 100 + 50 * 3;
Ist das Ergebnis des obigen Beispiels dasselbe wie 150 * 3 oder ist es dasselbe wie 100 + 150?
Wird zuerst addiert oder multipliziert?
Wie in der traditionellen Schulmathematik wird zuerst multipliziert.
Multiplikation ( *
) und Division ( /
) haben Vorrang vor Addition ( +
) und Subtraktion ( -
).
Und (wie in der Schulmathematik) kann die Rangfolge durch Klammern geändert werden:
Beispiel
let x = (100 + 50) * 3;
Bei der Verwendung von Klammern werden die Operationen innerhalb der Klammern zuerst berechnet.
Wenn viele Operationen dieselbe Priorität haben (wie Addition und Subtraktion), werden sie von links nach rechts berechnet:
Beispiel
let x = 100 + 50 - 3;
Rangfolgewerte für JavaScript-Operatoren
Hellrote Einträge weisen auf ECMAScript 2015 (ES6) oder höher hin.
Wert | Operator | Beschreibung | Beispiel |
---|---|---|---|
21 | ( ) | Ausdrucksgruppierung | (3 + 4) |
20 | . | Mitglied | Name der Person |
20 | [] | Mitglied | Name der Person"] |
20 | () | Funktionsaufruf | meineFunktion() |
20 | Neu | Erstellen | neues Datum() |
18 | ++ | Postfix-Inkrement | i++ |
18 | -- | Postfix-Dekrement | ich-- |
17 | ++ | Präfixinkrement | ++ich |
17 | -- | Präfixverringerung | --ich |
17 | ! | Logisch nicht | !(x==y) |
17 | eine Art von | Typ | Typ von x |
16 | ** | Potenzierung (ES2016) | 10 ** 2 |
fünfzehn | * | Multiplikation | 10 * 5 |
fünfzehn | / | Teilung | 10/5 |
fünfzehn | % | Divisionsrest | 10 % 5 |
14 | + | Zusatz | 10 + 5 |
14 | - | Subtraktion | 10 - 5 |
13 | << | Nach links verschieben | x << 2 |
13 | >> | Rechts verschieben | x >> 2 |
13 | >>> | Rechts verschieben (ohne Vorzeichen) | x >>> 2 |
12 | < | Weniger als | x<y |
12 | <= | Weniger als oder gleich | x <= y |
12 | > | Größer als | x > y |
12 | >= | Größer als oder gleich | x >= y |
12 | in | Eigenschaft im Objekt | "PI" in Mathe |
12 | Instanzvon | Instanz des Objekts | Instanz von Array |
11 | == | Gleich | x == y |
11 | === | Streng gleich | x === y |
11 | != | Ungleich | x != y |
11 | !== | Streng ungleich | x !== y |
10 | & | Bitweises UND | x & y |
9 | ^ | Bitweises XOR | x^y |
8 | | | Bitweises ODER | x | Y |
7 | && | Logisches UND | x && y |
6 | || | Logisches ODER | x || Y |
5 | ?? | Nullish-Koaleszenz | x?? Y |
4 | ? : | Kondition | ? "Ja Nein" |
3 | += | Abtretung | x += y |
3 | /= | Abtretung | x /= y |
3 | -= | Abtretung | x -= y |
3 | *= | Abtretung | x *= y |
3 | %= | Abtretung | x %= j |
3 | <<= | Abtretung | x <<= j |
3 | >>= | Abtretung | x >>= y |
3 | >>>= | Abtretung | x >>>= y |
3 | &= | Abtretung | x &= y |
3 | ^= | Abtretung | x ^= y |
3 | |= | Abtretung | x |= y |
2 | Ertrag | Pause-Funktion | Ausbeute x |
1 | , | Komma | 5, 6 |
Ausdrücke in Klammern werden vollständig berechnet, bevor der Wert im Rest des Ausdrucks verwendet wird.