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
wertetwas anderes als den numerischen Ausnahmewert NaN enthält. -
true - wenn
wertNaN enthält (nicht: wennwert === NaNist, 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;
}
}