JavaScript: strategie per la conversione di stringhe in numeri

Convertire stringhe in numeri con JavaScript è un compito abbastanza semplice se si conoscono alcune strategie da mettere in atto.

In modo generico, possiamo usare il costruttore Number. Ecco un esempio:


const str = '4';
const num = Number(str);

console.log(num + ' ' + typeof num); // 4 'number'

La conversione funziona perché la stringa è numerica. Se invece avessimo avuto:


const str = 'blue';
const num = Number(str);

console.log(num + ' ' + typeof num); // NaN NaN

avremmo ottenuto NaN, ossia Not A Number, perché la stringa non è numerica. Nel caso in cui abbiamo una stringa mista composta da una parte numerica e da una non numerica:


const str = '4blue';
const num = parseInt(str);

console.log(num + ' ' + typeof num); // 4 'number'

possiamo usare parseInt() o parseFloat() per estrarre la porzione numerica dalla stringa. A volte questo non basta e in quel caso possiamo usare le espressioni regolari:


const str = '4blue';
const n = str.replace(/\D+/g, '');
const num = parseInt(n);

console.log(num + ' ' + typeof num); // 4 'number'

In questo caso l'espressione regolare rimuove tutto ciò che non è numerico dalla stringa.

Torna su