JavaScript/Objekte/Number/isNaN
Aus SELFHTML-Wiki
< JavaScript | Objekte | Number
Die Methode isNaN() des Number-Objekts prüft, ob ein Wert vom Typ 'number' ist und eine gültige Zahl darstellt. Im Gegensatz zur globalen isNaN
-Funktion versucht Number.isNaN()
keine Typkonvertierung.
Syntax
Number.isNaN(wert);
wert
: Der zu prüfende Wert.
Rückgabewert
-
false
- wenn
typeof wert != 'number'
ist - wenn
wert
etwas anderes als den numerischen Ausnahmewert NaN enthält. -
true
- wenn
wert
NaN enthält (nicht: wennwert === NaN
ist, denn ein Vergleich mit NaN ergibt immerfalse
Polyfill
Die isNaN
-Methode des Number-Objekts wurde mit ECMAScript 2015 (ES6) eingeführt. Wenn Sie ältere Browser unterstützen möchten, können Sie auf einfache Weise einen Polyfill erzeugen:
Polyfill für Number.isNaN
if (!Number.isNaN) {
Number.isNaN = function(value) {
return typeof value === 'number' && isNaN(value);
}
}
Dieser Polyfill funktioniert ebenfalls, ist aber schwer verständlich. Er nutzt aus, dass NaN der einzige Wert ist, der nicht gleich mit sich selbst ist.
Alternativer Polyfill für Number.isNaN
if (!Number.isNaN) {
Number.isNaN = function(value) {
return value !== value;
}
}