Numero JavaScript (con esempi)

In questo tutorial imparerai a conoscere JavaScript Number con l'aiuto di esempi.

In JavaScript, i numeri sono tipi di dati primitivi. Per esempio,

 const a = 3; const b = 3.13;

A differenza di altri linguaggi di programmazione, non è necessario dichiarare specificamente valori interi o mobili utilizzando int , float , ecc.

È possibile utilizzare la notazione esponenziale e per includere numeri troppo grandi o troppo piccoli. Per esempio,

 const a1 = 5e9; console.log(a1); //5000000000 const a2 = 5e-5; console.log(a2); // 0.00005

I numeri possono anche essere indicati in notazione esadecimale. Per esempio,

 const a = 0xff; console.log(a); // 255 const b = 0x00 ; console.log(b); // 0

+ Operatore con numeri

Quando +viene utilizzato con i numeri, viene utilizzato per aggiungere i numeri. Per esempio,

 const a = 4 + 9; console.log(a); // 13

Quando +viene utilizzato con numeri e stringhe, viene utilizzato per concatenarli. Per esempio,

 const a = '4' + 9; console.log(a); // 49

Quando una stringa numerica viene utilizzata con altre operazioni numeriche, la stringa numerica viene convertita in un numero. Per esempio,

 const a = '4' - 2; console.log(a); // 2 const a = '4' / 2; console.log(a); // 2 const a = '4' * 2; console.log(a); // 8

JavaScript NaN

In JavaScript, NaN(Not a Number) è una parola chiave che indica che il valore non è un numero.

L'esecuzione di operazioni aritmetiche (eccetto +) su un valore numerico con stringa risulta NaN. Per esempio,

 const a = 4 - 'hello'; console.log(a); // NaN

La funzione incorporata isNaN()può essere utilizzata per trovare se un valore è un numero. Per esempio,

 const a = isNaN(9); console.log(a); // false const a = isNaN(4 - 'hello'); console.log(a); // true

Quando l' typeofoperatore viene utilizzato per il NaNvalore, fornisce un output numerico. Per esempio,

 const a = 4 - 'hello'; console.log(a); // NaN console.log(typeof a); // "number"

JavaScript Infinity

In JavaScript, quando viene eseguito un calcolo che supera il numero più grande (o più piccolo) possibile, viene restituito Infinity (o -Infinity). Per esempio,

 const a = 2 / 0; console.log(a); // Infinity const a = -2 / 0; console.log(a); // -Infinity

JavaScript BigInt

In JavaScript, il tipo di numero può rappresentare solo numeri inferiori a (2 53 - 1) e maggiori di - (2 53 - 1) . Tuttavia, se è necessario utilizzare un numero maggiore di quello, è possibile utilizzare il tipo di dati BigInt.

Un numero BigInt viene creato aggiungendo n alla fine di un numero intero. Per esempio,

 // BigInt value const value = 900719925124740998n; // Adding two big integers const value1 = value + 1n; console.log(value1); // returns "900719925124740999n"

Nota: BigInt è stato introdotto nella versione più recente di JavaScript e non è supportato da molti browser. Visita il supporto di JavaScript BigInt per saperne di più.

I numeri JavaScript vengono memorizzati a 64 bit

In JavaScript, i numeri vengono memorizzati nel formato a 64 bit IEEE-754, noto anche come "numeri in virgola mobile a doppia precisione".

I numeri vengono memorizzati in 64 bit (il numero viene memorizzato in posizioni da 0 a 51 bit, l'esponente in posizioni da 52 a 62 bit e il segno in posizione 63 bit).

Numeri Esponente Cartello
52 bit (0-51) 11 bit (52-62) 1 bit (63)

Problemi di precisione

Le operazioni sui numeri in virgola mobile producono alcuni risultati imprevisti. Per esempio,

 const a = 0.1 + 0.2; console.log(a); // 0.30000000000000004

Il risultato dovrebbe essere 0,3 invece di 0,30000000000000004 . Questo errore si verifica perché in JavaScript i numeri vengono memorizzati in formato binario per rappresentare internamente le cifre decimali. E i numeri decimali non possono essere rappresentati esattamente in forma binaria.

Per risolvere il problema di cui sopra, puoi fare qualcosa del genere:

 const a = (0.1 * 10 + 0.2 * 10) / 10; console.log(a); // 0.3

Puoi anche usare il toFixed()metodo.

 const a = 0.1 + 0.2; console.log(a.toFixed(2)); // 0.30

toFixed(2) arrotonda il numero decimale a due valori decimali.

 const a = 9999999999999999 console.log(a); // 10000000000000000

Nota : i numeri interi sono precisi fino a 15 cifre.

Numero oggetti

Puoi anche creare numeri usando la newparola chiave. Per esempio,

 const a = 45; // creating a number object const b = new Number(45); console.log(a); // 45 console.log(b); // 45 console.log(typeof a); // "number" console.log(typeof b); // "object"

Nota : si consiglia di evitare di utilizzare oggetti numerici. L'utilizzo di oggetti numerici rallenta il programma.

Metodi numerici JavaScript

Ecco un elenco di metodi numerici incorporati in JavaScript.

Metodo Descrizione
isNaN () determina se il valore passato è NaN
isFinite () determina se il valore passato è un numero finito
isInteger () determina se il valore passato è un numero intero
isSafeInteger () determina se il valore passato è un numero intero sicuro
parseFloat (stringa) converte la stringa mobile numerica in un numero a virgola mobile
parseInt (stringa, (radix)) converte la stringa numerica in intero
toExponential (fractionDigits) returns a string value for a number in exponential notation
toFixed(digits) returns a string value for a number in fixed-point notation
toPrecision() returns a string value for a number to a specified precision
toString((radix)) returns a string value in a specified radix(base)
valueof() returns the numbers value
toLocaleString() returns a string with a language sensitive representation of a number

For example,

 // check if a is integer const a = 12; console.log(Number.isInteger(a)); // true // check if b is NaN const b = NaN; console.log(Number.isNaN(b)); // true // display upto two decimal point const d = 5.1234; console.log(d.toFixed(2)); // 5.12

JavaScript Number Properties

Here is a list of Number properties in JavaScript.

Property Description
EPSILON returns the smallest interval between two representable numbers
MAX_SAFE_INTEGER returns the maximum safe integer
MAX_VALUE returns the largest possible value
MIN_SAFE_INTEGER returns the minimum safe integer
MIN_VALUE returns the smallest possible value
NaN represents 'Not-a-Number' value
NEGATIVE_INFINITY represents negative infinity
POSITIVE_INFINITY rappresenta l'infinito positivo
prototipo consente l'aggiunta di proprietà agli oggetti Number

Per esempio,

 // largest possible value const a = Number.MAX_VALUE; console.log(a); // 1.7976931348623157e+308 // maximum safe integer const a = Number.MAX_SAFE_INTEGER; console.log(a); // 9007199254740991

Funzione JavaScript Number ()

La Number()funzione viene utilizzata per convertire vari tipi di dati in numeri. Per esempio,

 const a = '23'; // string const b = true; // boolean //converting to number const result1 = Number(a); const result2 = Number(b); console.log(result1); // 23 console.log(result2); // 1

Se desideri saperne di più sulla conversione del numero, visita Conversione del tipo JavaScript.

Articoli interessanti...