Hallo Volker, Hallo Stefan
Warum liefern die Aufrufe parseInt("09") und parseInt("08") eine 0, aber alle anderen Aufrufe, z.B. parseInt("07") korrekte Werte (7 in dem Fall)????
Des Raetsels Loesung fuer dieses, in unseren Augen etwas unnatuerliche, Verhalten liegt im Ursprung der Sprache JavaScript. Die Sprache JavaScript kommt aus dem Umfeld von UNIX und C. Die normale Zahlendarstellung, die man unter UNIX haufig findet ist aber das oktale Zahlensystem (d1 = o1; d2 = o2; ... ; d8 = o10) unter in diesem Zahlensystem gibt es dann natuerlich die Ziffern 8 und 9 nicht und damit arbeitet dann ausgerechnet parseInt.
Loesung fuer das ganze ist ein doch etwas spaerlich dokumentierter Parameter der Funktion parseInt, der das Zahlensystem festlegt. Am besten sollte man also parseInt( Number, Base) als Prototyp verwenden.
Michael N.
PS: Auch ich bin in diese Falle schonmal gestolpert und es hat mich einiges an Zeit gekostet diesen Parameter zu entdecken.