parseInt
Birgit Egger
- javascript
Hi,
ich hab jetzt gerade folgendes ausprobiert:
alert("ParseTest: " + parseInt('07') + ", " + parseInt('08'));
die erste Ausgabe ist 7, die zweite ausgabe 0.
Versteht das wer und wie kann ich das lösen?
lg
Birgit
Hallo,
<http://de.selfhtml.org/javascript/objekte/unabhaengig.htm#parse_int@title=siehe SELFHTML>, Abschnitt »Beachten Sie«.
Siehe auch
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/parseInt
http://whereswalden.com/2011/02/26/the-proper-way-to-call-parseint-tldr-parseintstr-radix/
Mathias
Hallo,
alert("ParseTest: " + parseInt('07') + ", " + parseInt('08'));
die erste Ausgabe ist 7, die zweite ausgabe 0.
richtig, denn die 8 ist keine gültige Ziffer im Oktalsystem. Und dass du das Oktalsystem meinst, hast du mit der führenden Null zum Ausdruck gebracht.
Ich finde diese Konvention zwar auch unüberlegt und nicht intuitiv (ein Präfix wie etwa 0o, analog zum 0x für hexadezimal wäre gescheiter gewesen), aber sie ist schon seeehr alt.
Lösung: Gib die Zahlenbasis (10) als zweiten Parameter von parseInt an.
Ciao,
Martin
@@Birgit Egger:
nuqneH
alert("ParseTest: " + parseInt('07') + ", " + parseInt('08'));
die erste Ausgabe ist 7, die zweite ausgabe 0.
Versteht das wer
Ja. Und das Verständnis würde auch über dich kommen, wenn du dir die Erklärung zu http://de.selfhtml.org/javascript/objekte/unabhaengig.htm#parse_int@title=parseInt in SELFHTML durchliest.
Qapla'