3.1 Typ Number
Zahlen in JavaScript spielen eine wichtige Rolle bei der Arbeit mit Daten und bei Berechnungen. Die Sprache bietet zahlreiche Möglichkeiten für den Umgang mit Zahlen, einschließlich verschiedener Operationstypen und eingebauter Methoden.
In JavaScript gibt es einen Datentyp für Zahlen – Number. Dieser Datentyp stellt sowohl ganze Zahlen als auch Zahlen mit Gleitkomma dar. Zusätzlich wurde ab 2020 der Typ BigInt eingeführt, um mit sehr großen ganzen Zahlen zu arbeiten.
Beispiele:
let integer = 42; // Ganzzahl
let float = 3.14; // Gleitkommazahl
let bigInt = 12345678901234567890n; // Große Ganzzahl
Operationen mit Zahlen
Arithmetische Operationen:
Operation | Syntax | Beschreibung | Beispiel | Ergebnis |
---|---|---|---|---|
Addition | a + b | Addiert zwei Zahlen | 5 + 3 | 8 |
Subtraktion | a - b | Zieht eine Zahl von einer anderen ab | 10 - 4 | 6 |
Multiplikation | a * b | Multipliziert zwei Zahlen | 7 * 3 | 21 |
Division | a / b | Teilt eine Zahl durch eine andere | 20 / 5 | 4 |
Rest der Division | a % b | Gibt den Rest der Division zurück | 10 % 3 | 1 |
Potenzieren | a ** b | Erhöht eine Zahl auf die Potenz einer anderen | 2 ** 3 | 8 |
Inkrement und Dekrement
Operation | Syntax | Beschreibung | Beispiel | Ergebnis |
---|---|---|---|---|
Inkrement | ++a | Erhöht den Wert um eins (Präfix) | let a = 5; ++a; |
6 |
Inkrement | a++ | Erhöht den Wert um eins (Postfix) | let a = 5; a++; |
5 (und dann 6) |
Dekrement | --b | Verringert den Wert um eins (Präfix) | let b = 5; --b; |
4 |
Dekrement | b-- | Verringert den Wert um eins (Postfix) | let b = 5; b--; |
5 (und dann 4) |
Kombinierte Operationen
Operation | Syntax | Beschreibung | Beispiel | Ergebnis |
---|---|---|---|---|
Addition mit Zuweisung | a += b | Addiert und weist das Ergebnis zu | let x = 10; x += 5; |
15 |
Subtraktion mit Zuweisung | a -= b | Zieht ab und weist das Ergebnis zu | let x = 10; x -= 3; |
7 |
Multiplikation mit Zuweisung | a *= b | Multipliziert und weist das Ergebnis zu | let x = 10; x *= 2; |
20 |
Division mit Zuweisung | a /= b | Teilt und weist das Ergebnis zu | let x = 10; x /= 2; |
5 |
Rest mit Zuweisung | a %= b | Findet den Rest und weist das Ergebnis zu | let x = 10; x %= 3; |
1 |
3.2 Eingebaute Methoden
In JavaScript gibt es ein eingebautes Objekt Math
für die Durchführung verschiedener mathematischer Operationen.
1. Math.round():
Rundet eine Zahl auf die nächste ganze Zahl.
let rounded = Math.round(4.6); // 5
2. Math.ceil():
Rundet eine Zahl nach oben auf die nächste ganze Zahl.
let ceil = Math.ceil(4.2); // 5
3. Math.floor():
Rundet eine Zahl nach unten auf die nächste ganze Zahl.
let floor = Math.floor(4.8); // 4
4.Math.random():
Gibt eine zufällige Zahl im Bereich von 0 bis 1 zurück.
let random = Math.random();
5. Math.max() und Math.min():
Geben den maximalen und minimalen Wert aus einer Menge von Zahlen zurück.
let max = Math.max(1, 2, 3, 4); // 4
let min = Math.min(1, 2, 3, 4); // 1
6. Math.sqrt():
Gibt die Quadratwurzel einer Zahl zurück.
let sqrt = Math.sqrt(16); // 4
7. Math.pow():
Gibt eine Zahl zurück, die auf die angegebene Potenz erhöht wird.
let pow = Math.pow(2, 3); // 8
3.3 Strings in Zahlen parsen
Funktion parseInt():
Konvertiert einen String in eine Ganzzahl.
let int = parseInt('123'); // 123
Funktion parseFloat():
Konvertiert einen String in eine Gleitkommazahl.
let float = parseFloat('3.14'); // 3.14
Funktion Number():
Konvertiert einen Wert in eine Zahl.
let num = Number('42'); // 42
Werte überprüfen
Funktion isNaN():
Prüft, ob der Wert NaN (Not-a-Number) ist.
let isNotNumber = isNaN('hello'); // true
Funktion isFinite():
Prüft, ob der Wert eine endliche Zahl ist (unendlich oder nicht).
let finite = isFinite(10); // true
let notFinite = isFinite(Infinity); // false
3.4 Besondere Eigenschaften von Zahlen in JavaScript
1. Zahlenlimits
In JavaScript werden Zahlen im Double-Precision-Floating-Point-Format dargestellt, was bestimmte Einschränkungen aufweist:
- Maximaler Wert: Number.MAX_VALUE
- Minimaler Wert: Number.MIN_VALUE
- Positive Unendlichkeit: Infinity
- Negative Unendlichkeit: -Infinity
- Keine Zahl (NaN): ein Wert, der keine Zahl ist
2. Genauigkeit der Zahlen
Die Arbeit mit Gleitkommazahlen kann zu Genauigkeitsproblemen führen:
let sum = 0.1 + 0.2;
console.log(sum); // 0.30000000000000004
Das gibt's in allen Programmiersprachen – JavaScript ist da keine Ausnahme.
3.Sichere Ganzzahlen
In JavaScript gibt es das Konzept der "sicheren" Ganzzahlen, die genau als Gleitkommazahlen dargestellt werden können:
- Maximale sichere Ganzzahl:
Number.MAX_SAFE_INTEGER (253 - 1)
- Minimale sichere Ganzzahl:
Number.MIN_SAFE_INTEGER (-(253 - 1))
GO TO FULL VERSION