Wyodrębnianie liczb w JavaScript
Funkcja Number działa tylko
z ciągami znaków składającymi się z cyfr.
Jednakże, podczas programowania w JavaScript
często spotykamy sytuacje, gdy musisz
pracować z ciągami znaków, na początku których
znajduje się liczba, a następnie litery.
Przykładem takiego ciągu może być wartość
w pikselach: '12px'. Załóżmy, że potrzebujemy
pobrać liczbę znajdującą się na początku, odrzucając
część tekstową. Do takiej operacji istnieje
funkcja parseInt. Spójrzmy na jej działanie
na przykładzie:
let num = parseInt('12px');
alert(num); // wyświetli 12
Piksele jednak czasami są ułamkowe:
'12.5px'. W tym przypadku funkcja parseInt
nie radzi sobie i wyświetla tylko część całkowitą:
let num = parseInt('12.5px');
alert(num); // nadal wyświetli 12
Ogólnie rzecz biorąc, możliwe, że takie zachowanie - to
właśnie to, czego potrzebujesz. Ale jeśli nie - użyj
funkcji parseFloat, która wyodrębnia
liczbę wraz z jej częścią ułamkową:
let num = parseFloat('12.5px');
alert(num); // wyświetli 12.5
Oczywiście, brak części ułamkowej nie przeszkadza
funkcji parseFloat działać poprawnie:
let num = parseFloat('12px');
alert(num); // wyświetli 12
Dana jest zmienna o wartości '5px' i
zmienna o wartości '6px'. Znajdź
sumę pikseli z wartości tych zmiennych
i wyświetl ją na ekranie.
Dana jest zmienna o wartości '5.5px'
i zmienna o wartości '6.25px'.
Znajdź sumę pikseli z wartości tych zmiennych
i wyświetl ją na ekranie.
Zmodyfikuj poprzednie zadanie tak, aby
do wyświetlanego wyniku dodane zostały litery
'px'. To znaczy, jeśli nasza suma wynosi
11.75, to na ekranie niech wyświetli się
'11.75px'.