Neueste Web-Entwicklung Tutorials
 

JavaScript Nummern


JavaScript muss nur eine Art von number .

Numbers können mit oder ohne Dezimalstellen geschrieben werden.


JavaScript Zahlen

JavaScript numbers können mit oder ohne Dezimalstellen geschrieben werden:

Beispiel

var x = 34.00;    // A number with decimals
var y = 34;       // A number without decimals

Extra große oder besonders kleine Zahlen können mit wissenschaftlichen (Exponent) Notation geschrieben werden:

Beispiel

var x = 123e5;    // 12300000
var y = 123e-5;   // 0.00123

JavaScript Zahlen sind immer 64-Bit Floating Point

Im Gegensatz zu vielen anderen Programmiersprachen nicht definiert JavaScript nicht verschiedene Arten von Zahlen, wie ganze Zahlen sind, kurz, lang, Gleitkommazahlen usw.

JavaScript Zahlen werden immer als doppelter Genauigkeit Gleitkommazahlen gespeichert, nach dem internationalen Standard IEEE 754.

Dieses Format speichert Zahlen in 64 Bits, wobei die Anzahl (der Anteil) in Bits gespeichert ist 0-51, der Exponent in den Bits 52 bis 62, und das Zeichen in Bit 63:

Wert (aka Fraction / Mantissa) Exponent Schild
52 Bits (0-51) 11 Bits (52-62) 1 bit (63)

Präzision

Die ganzen Zahlen (Zahlen ohne einen Zeitraum oder Exponentialnotation) sind genau bis zu 15 Ziffern betrachtet.

Beispiel

var x = 999999999999999;   // x will be 999999999999999
var y = 9999999999999999;  // y will be 10000000000000000
Versuch es selber "

Die maximale Anzahl der Dezimalstellen ist 17, aber arithmetische Gleitkomma ist nicht zu 100% korrekt:

Beispiel

var x = 0.2 + 0.1;         // x will be 0.30000000000000004
Versuch es selber "

Um das Problem zu lösen, oben, hilft es, sich zu vermehren und teilen:

Beispiel

var x = (0.2 * 10 + 0.1 * 10) / 10;       // x will be 0.3
Versuch es selber "

Hexadezimal

JavaScript interpretiert numerische Konstanten als hexadezimal, wenn sie von 0x vorangestellt ist.

Beispiel

var x = 0xFF;             // x will be 255
Versuch es selber "

Schreiben Sie niemals eine Zahl mit einer führenden Null (wie 07).
Einige JavaScript-Versionen interpretieren Zahlen als Oktal, wenn sie geschrieben werden, mit einer Null führen.

Standardmäßig zeigt Javascript Zahlen als Basis 10 Dezimalstellen.

Aber Sie können die Verwendung toString() Methode zur Ausgabe von Zahlen als Basis 16 (hex), Basis - 8 (Oktal) oder Basis 2 (binär).

Beispiel

var myNumber = 128;
myNumber.toString(16);     // returns 80
myNumber.toString(8);      // returns 200
myNumber.toString(2);      // returns 10000000
Versuch es selber "

Unendlichkeit

Unendlich (oder -Infinity) ist der Wert JavaScript zurück, wenn Sie eine Nummer außerhalb der größtmögliche Zahl zu berechnen.

Beispiel

var myNumber = 2;
while (myNumber != Infinity) {          // Execute until Infinity
    myNumber = myNumber * myNumber;
}
Versuch es selber "

Division durch 0 (Null) erzeugt auch Infinity:

Beispiel

var x =  2 / 0;          // x will be Infinity
var y = -2 / 0;          // y will be -Infinity
Versuch es selber "

Unendlichkeit ist eine Zahl: typeOf Unendlichkeit gibt Nummer.

Beispiel

typeof Infinity;        // returns "number"
Versuch es selber "

NaN - Not a Number

NaN ist ein reserviertes Wort JavaScript anzeigt , dass ein Wert keine Zahl ist.

Der Versuch , Arithmetik mit einem nicht-numerische Zeichenfolge zu tun in Folge wird NaN (Not a Number):

Beispiel

var x = 100 / "Apple";  // x will be NaN (Not a Number)
Versuch es selber "

Wenn jedoch die Zeichenfolge einen numerischen Wert enthält, wird das Ergebnis eine Zahl sein:

Beispiel

var x = 100 / "10";     // x will be 10
Versuch es selber "

Sie können die globale JavaScript - Funktion verwenden isNaN() , um herauszufinden , ob ein Wert eine Zahl ist.

Beispiel

var x = 100 / "Apple";
isNaN(x);               // returns true because x is Not a Number
Versuch es selber "

Achten Sie auf NaN. Wenn Sie NaN in einer mathematischen Operation verwenden, wird das Ergebnis auch NaN:

Beispiel

var x = NaN;
var y = 5;
var z = x + y;         // z will be NaN
Versuch es selber "

Oder könnte das Ergebnis eine Verkettung sein:

Beispiel

var x = NaN;
var y = "5";
var z = x + y;         // z will be NaN5
Versuch es selber "

NaN ist eine Zahl, und typeof NaN gibt Nummer:

Beispiel

typeof NaN;             // returns "number"
Versuch es selber "

Zahlen können Objekte sein

Normalerweise werden JavaScript Zahlen primitive Werte von Literalen erstellt: var x = 123

: Aber Zahlen können auch als Objekte mit dem Schlüsselwort neu definiert werden var y = new Number(123)

Beispiel

var x = 123;
var y = new Number(123);

// typeof x returns number
// typeof y returns object
Versuch es selber "

Nicht Anzahl Objekte erstellen. Es verlangsamt die Ausführungsgeschwindigkeit.
Das new Schlüsselwort kompliziert den Code. Dies kann einige unerwartete Ergebnisse produzieren:

Bei Verwendung == Gleichheits - Operator, sieht die gleiche Anzahl gleich:

Beispiel

var x = 500;             
var y = new Number(500);

// (x == y) is true because x and y have equal values
Versuch es selber "

Wenn die === Gleichheitsoperator verwenden, sind gleich Zahlen nicht gleich sind, weil der Operator === Gleichheit sowohl in Art und Wert erwartet.

Beispiel

var x = 500;             
var y = new Number(500);

// (x === y) is false because x and y have different types
Versuch es selber "

Oder noch schlimmer. Objekte können nicht verglichen werden:

Beispiel

var x = new Number(500);             
var y = new Number(500);

// (x == y) is false because objects cannot be compared
Versuch es selber "

JavaScript-Objekte können nicht verglichen werden.


Testen Sie sich mit Übungen!

Übung 1 » Übung 2» Übung 3 » Übung 4»