Przejdź do głównej treści
  1. Strona główna
  2. Słownik
  3. INF.03
  4. Funkcja isNaN() w JavaScript

Funkcja isNaN() w JavaScript

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

isNaN() sprawdza, czy podana wartość nie jest liczbą. Nazwa pochodzi od angielskiego is Not a Number.

Funkcja zwraca:
- true — gdy wartość nie może być traktowana jako liczba,
- false — gdy wartość jest liczbą albo może zostać przekonwertowana na liczbę.

Przykłady

isNaN(10);        // false
isNaN("10");      // false, bo tekst "10" można zamienić na liczbę
isNaN("abc");     // true
isNaN(NaN);       // true

W pytaniach egzaminacyjnych często pojawia się zapis:

!isNaN(x)

Operator ! oznacza negację, więc warunek !isNaN(x) jest spełniony wtedy, gdy x jest liczbą lub może być potraktowane jak liczba.

Połączenie z warunkiem dodatniości

if ((!isNaN(x)) && (x > 0)) {
  // instrukcje
}

Ten warunek oznacza: wykonaj instrukcje, jeśli x jest wartością liczbową oraz jest większe od zera.

Uwaga praktyczna

Globalna funkcja isNaN() wykonuje konwersję typów, dlatego np. isNaN("5") zwróci false. W nowoczesnym kodzie często stosuje się Number.isNaN(), ale w zadaniach egzaminacyjnych zwykle chodzi o klasyczne działanie isNaN().