Przejdź do treści głównej
INF.03Frontend & JS

Konwersja typów w JS (parseInt, parseFloat, isNaN)

Funkcje służące do rzutowania i wyodrębniania liczb całkowitych oraz zmiennoprzecinkowych z ciągów tekstowych.

Parsowanie liczb w JS:

  • parseInt(string, radix) – parsuje string do liczby całkowitej. Zawsze warto podawać podstawę systemu liczbowego (np. 10 dla systemu dziesiętnego): parseInt("42px", 10) daje 42.
  • parseFloat(string) – parsuje string do liczby zmiennoprzecinkowej: parseFloat("3.14m") daje 3.14.
  • Number(wartosc) – konwertuje całą wartość na liczbę (jeśli w tekście są litery, np. "42px", zwróci NaN).
  • isNaN(wartosc) – sprawdza, czy wartość nie jest poprawną liczbą (Not-a-Number).
JAVASCRIPT
const poleCena = document.querySelector('#cena').value; // np. "19.99"
const cenaLiczba = parseFloat(poleCena);

if (isNaN(cenaLiczba)) {
    console.error('Wprowadzono niepoprawną cenę!');
} else {
    const brutto = cenaLiczba * 1.23;
    console.log('Cena brutto: ' + brutto.toFixed(2));
}

Najczęstsze pułapki na egzaminie INF.03:

  • NaN === NaN daje false! Aby sprawdzić, czy wartość jest NaN, należy bezwzględnie użyć funkcji isNaN(x) lub Number.isNaN(x).

Chcesz sprawdzić to pojęcie w praktyce?

Przeszukaj pytania z oficjalnych arkuszy CKE powiązane z hasłem Konwersja typów w JS (parseInt, parseFloat, isNaN) lub rozpocznij trening.