Nur aus Neugier.
Es scheint nicht sehr logisch, dass dies typeof NaN
eine Zahl ist. Übrigens genau wie NaN === NaN
oder NaN == NaN
falsch zurückgegeben. Ist dies eine der Besonderheiten von Javascript oder gibt es einen Grund dafür?
Edit: danke für deine antworten. Es ist jedoch nicht einfach, sich zurechtzufinden. Antworten lesen und das Wiki habe ich besser verstanden, aber trotzdem einen Satz wie
Ein Vergleich mit einem NaN liefert auch beim Vergleich mit sich selbst immer ein ungeordnetes Ergebnis. Die Vergleichsprädikate sind entweder signalisierend oder nicht signalisierend, die Signalisierungsversionen signalisieren eine ungültige Ausnahme für solche Vergleiche. Die Gleichheits- und Ungleichheitsprädikate sind nicht signalisierend, sodass x = x, das false zurückgibt, verwendet werden kann, um zu testen, ob x ein ruhiges NaN ist.
hält nur meinen Kopf in Bewegung. Wenn jemand dies in eine lesbare Sprache übersetzen kann (im Gegensatz beispielsweise zu einem Mathematiker), wäre ich dankbar.
isNumeric
vor, den Typ zu überprüfen: $.isNumeric(NaN);
gibt false zurück, wobei as $.type(NaN);
die Zahl zurückgibt. api.jquery.com/jQuery.isNumeric