Calocybe: IE verrechnet sich

Beitrag lesen

Hallo!

das haengt irgendwie mit den fuehrenden Nullen zusammen, und dem Parameter "Radix". Ein Zahl beginnend mit 0 wird als Oktalzahl, ohne 0 als Dezimal interpretiert.

Aber warum das so ist, koennen die JS-Gurus besser erklaeren. Irgendwie gibt es auch noch 0x als Hexzahl.
Wenn Du die fuehrenden 0 entfernst, stimmt die Rechnung

Du hast es doch eigentlich schon alles gesagt. Na gut, man kann's noch etwas erlaeutern.
Wie gesagt, mit 0 beginnende Zahlen werden oktal interpretiert. Also:

oktal    dezimal    hexadezimal
  000          0           0x00
  001          1           0x01
  002          2           0x02
  003          3           0x03
  004          4           0x04
  005          5           0x05
  006          6           0x06
  007          7           0x07

010          8           0x08
  011          9           0x09
  012         10           0x0A
  013         11           0x0B
  014         12           0x0C
  015         13           0x0D
  016         14           0x0E
  017         15           0x0F

020         16           0x10
  021         17           0x11
  022         18           0x12
  023         19           0x13
  024         20           0x14
  025         21           0x15
  026         22           0x16
  027         23           0x17

030         24           0x18

So, na toll, und was ist jetzt mit der 008 und der 009? Tja, diese oktalen Zahlen gibt es gar nicht! Und der Netscape bringt da auch ganz brav eine Fehlermeldung, wie es sein soll (wenn diese auch ein wenig irrefuehrend ist). Aber der IE mit seiner schwachsinnigen Fehlertoleranz interpretiert 009 dann eben einfach als die dezimale Zahl 9, was schlicht und einfach falsch ist. Lest es von meinen Lippen: FALSCH! *aufreg* *fluch* Und 9*60 ist nach wie vor 540. Aber die 010 erkennt er dann wieder als ordentliche oktale Zahl, welche der dezimalen 8 entspricht, tja und 8*60 ist eben 480.

Wieder mal ein schoenes Beispiel, wie Microsoft den Leuten eine rosa Welt vorspielt, wo es fuer sie einfacher waere, wenn man ihnen erlauben wuerde, selber zu denken. *laester*

Calocybe