Εξαγωγή αριθμών στο JavaScript
Η συνάρτηση Number λειτουργεί μόνο
με συμβολοσειρές που αποτελούνται από ψηφία.
Ωστόσο, κατά τον προγραμματισμό σε JavaScript
συχνά συναντώνται καταστάσεις όπου χρειάζεται
να αντιμετωπίσετε συμβολοσειρές, στις οποίες στην αρχή
υπάρχει ένας αριθμός, και στη συνέχεια γράμματα.
Παράδειγμα μιας τέτοιας συμβολοσειράς μπορεί να είναι η τιμή
σε pixel: '12px'. Ας υποθέσουμε ότι πρέπει
να πάρουμε τον αριθμό που βρίσκεται στην αρχή, απορρίπτοντας
το τμήμα της συμβολοσειράς. Για μια τέτοια λειτουργία υπάρχει
η συνάρτηση parseInt. Ας δούμε
τη λειτουργία της με ένα παράδειγμα:
let num = parseInt('12px');
alert(num); // θα εμφανίσει 12
Ωστόσο, τα pixel μερικές φορές είναι κλασματικά:
'12.5px'. Σε αυτή την περίπτωση, η συνάρτηση parseInt
δεν μπορεί να τα διαχειριστεί και εμφανίζει μόνο το ακέραιο μέρος:
let num = parseInt('12.5px');
alert(num); // θα εμφανίσει 12
Σε γενικές γραμμές, είναι πιθανό αυτή η συμπεριφορά να είναι
ακριβώς αυτό που χρειάζεστε. Αλλά αν δεν είναι, χρησιμοποιήστε
τη συνάρτηση parseFloat, που εξάγει
τον αριθμό μαζί με το κλασματικό του μέρος:
let num = parseFloat('12.5px');
alert(num); // θα εμφανίσει 12.5
Φυσικά, η απουσία κλασματικού μέρους δεν εμποδίζει
τη συνάρτηση parseFloat να λειτουργεί σωστά:
let num = parseFloat('12px');
alert(num); // θα εμφανίσει 12
Δίνεται μια μεταβλητή με τιμή '5px' και
μια μεταβλητή με τιμή '6px'. Βρείτε
το άθροισμα των pixel από τις τιμές αυτών των μεταβλητών
και εμφανίστε το στην οθόνη.
Δίνεται μια μεταβλητή με τιμή '5.5px'
και μια μεταβλητή με τιμή '6.25px'.
Βρείτε το άθροισμα των pixel από τις τιμές αυτών των μεταβλητών
και εμφανίστε το στην οθόνη.
Τροποποιήστε το προηγούμενο πρόβλημα έτσι ώστε
στο αποτέλεσμα που εμφανίζεται να προστίθενται τα γράμματα
'px'. Δηλαδή, αν το άθροισμά μας είναι
11.75, τότε στην οθόνη ας εμφανίζεται
'11.75px'.