dedlfix: NaN ausgabe ändern

Beitrag lesen

Tach!

es gibt das Number-Objekt, und darauf eine Methode isNaN, mit der Du prüfen kannst, ob ein Wert NaN ist.

isNaN() ist auch eine globale Funktion.

Aber was willst Du eigentlich prüfen? Ob das Feld leer ist? Was machst Du, wenn jemand "Hallo" statt "42" eingibt, oder "12 Stück"? Gerade das letzte Beispiel ist böse, denn parseFloat("12 Stück") liefert ganz unschuldig die Zahl 12.

Die Frage ist: Stört das in dem Fall? Muss es unbedingt eine astreine Zahleneingabe sein, oder reicht es, dass der eingegebene Wert irgendwie in eine Zahl konvertiert werden kann? In dem Fall halte ich es für verschmerzbar, dass Javascript nachfolgende Nicht-Ziffern einfach ignoriert.

Du musst deine Eingaben validieren. Dafür ist isNaN der falsche Weg,

Das sehe ich in dem Fall nicht so und halte isNaN() in dem Fall für eine geeignete Funktion.

du solltest statt dessen Folgendes tun:

Das kann man auch machen - wenn es wirklich darauf ankommt. Und wenn man davon ausgeht, dass der Browser nicht zu alt ist und auf <input type=text> zurückfällt.

dedlfix.