Gibt es oder gibt es nicht einen integer-Typ in JavaScript?
Ich bin gerade erst anfangen zu lernen, Javascript, und ich bekam sofort verwirrt durch scheinbar widersprüchliche Aussagen in Mozilla Eine neu-Einführung in JavaScript (JS tutorial).
Einerseits:
"Es gibt keine solche Sache wie eine integer - in JavaScript, so dass Sie
ein bisschen vorsichtig sein mit Ihren arithmetische wenn Sie ' re verwendet, um Mathematik in C
oder Java."
Auf der anderen Seite (sofort nach diesem Absatz):
"In der Praxis werden integer-Werte behandelt werden als 32-bit-ints (und sind
gespeichert in einigen browser-Implementierungen), die
wichtig für bitweise Operationen."
und
"Sie können die Konvertierung einer string in einen integer mit der integrierten parseInt()
- Funktion".
So, gibt es so etwas wie integer in JavaScript oder gibt es keine?
- Ja, es sind integer-Werte, aber es gibt keine ganze Zahl Type, nur Number. Implementierungsdetails, wie Sie gespeichert sind, ist nicht Teil der Sprachspezifikation.
- Ihre knappe Antwort ist voll und ganz gelöscht meine Verwirrung. Bitte postet Sie als Antwort, so dass ich akzeptieren kann. Ich danke Ihnen sehr.
- es ist ein Teil der Spezifikation für sicher: "primitive value corresponding to a double-precision 64-bit binary format IEEE 754-2008 Wert"
- Es bekommt besonderes, wenn Sie bitweise Operationen auf Zahlen.
- bitte legen Sie Ihren Kommentar als eine Antwort (mit einer kleinen Korrektur über IEEE754), da die zur Zeit die Antworten sind ein Graus. Vielen Dank 🙂
- Sie schrieb sich in einen von den (scheinbar gelöscht) Antworten, dass die Typen wie int sind nicht genau definiert zu Javascript. Ich Frage mich, was die
int
,boolean
..etc Schlüsselwörter sind reserviert für dann. Und was ist mittypeof
? - Sie sind nicht reserviert ecma-international.org/ecma-262/6.0/index.html#sec-keywords
- AimanAl-Eryani, die Sie verwendet werden, reserviert bis ES3, aber Sie sind nicht mehr.
- Sie waren Teil des die verlassene ES4-Entwurf.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist nur die Anzahl Datentyp in JS das steht für zahlen.
Intern implementiert ist es als IEEE 754 double-precision-floating-point-Zahl.
Was es bedeutet, ist, dass - technisch gibt es keinen eigenen Datentyp zur Darstellung ganzer zahlen.
Praktisch bedeutet es, dass wir sicher können nur die zahlen sind sicher darstellbar durch die oben genannten standard. Und enthält es integer-Werte im Bereich von:
[-9007199254740991; 9007199254740991]
. Beide Werte sind als Konstanten definiert:Zahl.MIN_SAFE_INTEGER
undZahl.MAX_SAFE_INTEGER
entsprechend.Sollte ich noch erwähnen, dass es eigentlich einen Typ namens
BigInt
stellt eine wahre integer.Aber, denn es kann nicht verwendet werden
Number
und ist in der Regel nur eine gute Idee für größere zahlen, würde ich nicht raten.Ich dachte, es war eine Erwähnung Wert, obwohl.
Ich glaube Fragesteller hat bereits seine/Ihre Antwort. Aber für andere wie mich, Sie können überprüfen, die Anzahl ist integer oder nicht in JavaScript mithilfe Anzahl.isInteger() Methode.
MDN
Ah ja, das kann ziemlich verwirrend sein. In Javascript den Typ der Variablen implizit definiert.
die Funktion
parseInt
einfach nicht nehmen dem Komma berücksichtigt und die Art der das Ergebnis wäre eine int.1/3 = 0.3333333333333333
in JavaScript.Math.floor() or .ceil()
. Egal, Sie sind sowohl in der Anzahl Arten.//
Betreiber? Das ist ein Kommentar.Als Warum
parseInt()
oderint
Werte in JavaScript, da brauchen wir int-Werte, um sicherzustellen, dass unsere komplexen mathematischen Ausdruck, bringen uns fehlerfrei Ergebnishier einige Punkt könnte hilfreich sein, um zu verstehen, integer in JavaScript und Erste Anlaufstelle ist das König
In JavaScript integer bedeutet nur, dass die zahlen nicht über einen Dezimalbruch
Ganzzahlen sind zahlen, enthalten keine gebrochene Teile.
Ganzzahlen sind zahlen, die kann positiv oder negativ sein.
Ganzzahlen sind zahlen, die formatiert werden können als dezimal, oktal, oder hexadezimal in JavaScript.
Dezimale ganze zahlen aus zahlen von 0 bis 9 und kann nicht beginnen, mit führenden Nullen.
Oktale Ganzzahlen, die auch als base-8, muss beginnen mit einer führenden null. Jede Ziffer nach der führenden null, also von 0 bis 7.
Hexadezimale Ganzzahlen, auch bezeichnet als sockel-16, muss beginnen mit 0x oder 0X. Jede Ziffer nach der führenden null, also von 0 bis 15, aber 10 bis 15 sind dargestellt durch die Buchstaben a (oder A) bis f (oder F).
Quelle
Was sind die ganzen zahlen in JavaScript?
King Zeigen
Alle Anderen Punkte
1.23e5
1.23e5
IST eine ganze Zahl sein.0b1111
sind auch ganze zahlen.