Come abbiamo visto nella lezione precedente, i numeri sono molto importanti in JavaScript. In questa lezione, andiamo a vedere i diversi metodi predefiniti dei numeri presenti all'interno di JavaScript.
Lista completa dei metodi
Ecco la lista completa dei metodi predefiniti JavaScript dei numeri.
Metodo | Descrizione |
isFinite() | Restituisce true se un numero è finito, altrimenti restituisce false . |
isInteger() | Restituisce true se un valore è un numero intero, altrimenti restituisce false . |
isNaN() | Restituisce true se un valore non è un numero (NaN), altrimenti restituisce false . |
parseFloat() | Analizza una stringa e restituisce un numero in virgola mobile. |
parseInt() | Analizza una stringa e restituisce un numero intero. |
toExponential() | Restituisce una stringa che rappresenta un numero in notazione esponenziale. |
toFixed() | Restituisce una stringa che rappresenta un numero approssimato ad un numero di cifre decimali. |
toPrecision() | Restituisce una stringa che rappresenta un numero approssimato ad una lunghezza specificata. |
toString() | Coverte un numero in una stringa. |
L'oggetto Number
Prima di addentrarci all'interno dei metodi dei numeri, dobbiamo parlare prima dell'oggetto Number
. Cosa è? È un oggetto che ha metodi e proprietà per lavorare con i numeri. In alcuni dei metodi della tabella qui sopra, è necessario utilizzare Number.
metodo().
let a = 7;
let finito = Number.isFinite(a);
Alcuni dei metodi hanno la possibilità di essere scritti con e senza utilizzare Number
. Se non si scrive, stiamo utilizzando un metodo globale e, in genere, la variabile viene convertita in numero.
let a = "7";
// Controllo se il numero è finito (true) o infinito (false)
alert(Number.isFinite(a)); // Risultato: false
alert(isFinite(a)); // Risultato: true
Metodi più importanti
Della lista, vediamo quali sono i metodi più importanti:
isFinite()
isInteger()
parseInt()
toFixed()
toString()
Ora diamo un'occhiata in dettaglio a questi 5 metodi.
Il metodo isFinite()
Questo metodo permette di controllare se il numero è un valore finito. In questo caso, viene restituito true
. In caso contrario, false
.
Sintassi: isFinite(
numero)
oppure Number.isFinite(
numero)
.
let a = 787;
alert(isFinite(a)); // Risultato: true
let b = 3 / 0; // Infinity
alert(isFinite(b)); // Risultato: false
let c = 0 / 0; // NaN
alert(isFinite(c)); // Risultato: false
let d = null; // null (indefinito)
alert(isFinite(d)); // Risultato: true
Il metodo isInteger()
Il metodo isInteger()
controlla se una variabile numerica o un numero è intero. Questo metodo necessità di Number
.
Sintassi: Number.isInteger(
numero)
.
let a = 8982;
alert(Number.isInteger(a)); // Risultato: true
let b = 0.4;
alert(Number.isInteger(b)); // Risultato: false
let c = 0 / 0;
alert(Number.isInteger(c)); // Risultato: false
let d = 5 / 0;
alert(Number.isInteger(d)); // Risultato: false
Il metodo parseInt()
Il metodo parseInt()
restituisce il primo numero intero all'interno di una stringa.
Sintassi: parseInt(
stringa)
o Number.parseInt(
stringa)
. In questo caso, usare o non usare Number
non fa differenza.
let a = "9";
alert(parseInt(a)); // Risultato: 9
let b = "9.032";
alert(parseInt(b)); // Risultato: 9
let c = "9 è un numero";
alert(parseInt(c)); // Risultato: 9
let d = "numero: 9";
alert(parseInt(d)); // Risultato: NaN
Il metodo toFixed()
Questo metodo permette di arrotondare i decimali di un numero.
Sintassi: toFixed(
numero_decimali)
. Il numero_decimali indica il numero dei decimali a cui deve essere arrotondato il numero. Se non viene specificato, viene sottinteso 0.
let a = 7.12345678;
alert(a.toFixed()); // Risultato: 7
alert(a.toFixed(3)); // Risultato: 7.123
Il metodo toString()
Il metodo toString()
permette di convertire un numero in una stringa.
Sintassi: numero.toString()
.
let a = 93.09;
a = a.toString(); // Risultato: "93.09"
alert(typeof a); // Risultato: string
Altri metodi
Ora che abbiamo visto quelli più importanti, vediamo gli altri metodi dei numeri in JavaScript.
Il metodo isNaN()
Il metodo isNaN()
controlla se il numero è NaN (Not A Number, in italiano "Non un numero").
Sintassi: isNaN(
numero)
.
let a = NaN;
alert(isNaN(a)); // Risultato: true
let b = 93;
alert(isNaN(b)); // Risultato: false
Il metodo parseFloat()
Il metodo parseFloat()
funziona allo stesso modo di parseInt()
. Tuttavia, invece di prelevare il primo numero intero, preleva il primo numero decimale in una stringa.
Sintassi: parseFloat(
stringa)
.
let a = "83.98";
alert(parseFloat(a)); // Risultato: 83.98
let b = "83.98 è un numero";
alert(parseFloat(b)); // Risultato: 83.98
Il metodo parseFloat()
preleva anche i numeri non decimali, perché viene sottinteso ",00" alla fine di ogni numero.
Il metodo toExponential()
Questo metodo coverte un numero in notazione scientifica.
Sintassi: numero.toExponential(
numero_decimali)
. Il numero_decimali rappresenta il numero di decimali che deve avere la notazione scientifica. Non è obbligatorio: se omesso, vengono inseriti il numero di decimali necessario.
let a = 1090233;
alert(a.toExponential()); // Risultato: 1.090233e+6
alert(a.toExponential(2)); // Risultato: 1.09e+6
Il metodo toPrecision()
Il metodo toPrecision()
arrotonda un numero in base ad una lunghezza specificata.
Sintassi: numero.toPrecision(
lunghezza)
. La lunghezza indica la quanti numeri devono essere presenti nel numero, senza considerare gli zero (per i numeri decimali). Ad esempio, se lunghezza è 2 e il numero è 0.09223, il conto parte dal 9 e il numero finale risulta 0.092.
let a = 1.23;
alert(a.toPrecision(2)); // Risultato: 1.2
let b = 0.4556;
alert(b.toPrecision(2)); // Risultato: 0.46