ES6 - Numero

L'oggetto Number rappresenta la data numerica, interi o numeri in virgola mobile. In generale, non è necessario preoccuparsi degli oggetti Number perché il browser converte automaticamente i letterali numerici in istanze della classe number.

Di seguito è riportata la sintassi per la creazione di un oggetto numero.

var val = new Number(number);

Al posto di number, se fornisci un argomento non numerico, l'argomento non può essere convertito in un file number, restituisce NaN (Not-a-Number).

Proprietà numero

Suor n Proprietà e descrizione
1 Numero.EPSILON

L'intervallo più piccolo tra due numeri rappresentabili.

2 Number.MAX_SAFE_INTEGER

Il numero intero sicuro massimo in JavaScript (2 ^ 53 - 1).

3 Number.MAX_VALUE

Il più grande numero rappresentabile positivo.

4 MIN_SAFE_INTEGER

Il numero intero sicuro minimo in JavaScript (- (2 ^ 53-1)).

5 Number.MIN_VALUE

Il numero rappresentabile positivo più piccolo, ovvero il numero positivo più vicino allo zero (senza essere effettivamente zero)

6 Numero.Nan

Valore speciale "non un numero"

7 Number.NEGATIVE_INFINITY

Valore speciale che rappresenta l'infinito negativo; restituito in overflow

8 Number.POSITIVE_INFINITY

Valore speciale che rappresenta l'infinito; restituito in overflow

9 Number.prototype

Valore speciale che rappresenta l'infinito; restituito in overflow

Metodi numerici

Suor n Metodo e descrizione
1 Number.isNaN ()

Determina se il valore passato è NaN.

2 Number.isFinite ()

Determina se il valore passato è un numero finito.

3 Number.isInteger ()

Determina se il valore passato è un numero intero.

4 Number.isSafeInteger ()

Determina se il valore passato è un numero intero sicuro (numero compreso tra - (253-1) e 253-1)

5 Number.parseFloat ()

Il valore è lo stesso di parseFloat () dell'oggetto globale

6 Number.parseInt ()

Il valore è lo stesso di parseInt () dell'oggetto globale

Metodi di istanze numeriche

L'oggetto Number contiene solo i metodi predefiniti che fanno parte della definizione di ogni oggetto.

Suor n Metodo e descrizione dell'istanza
1 toExponential ()

Restituisce una stringa che rappresenta il numero in notazione esponenziale

2 toFixed ()

Restituisce una stringa che rappresenta il numero in notazione a virgola fissa

3 toLocaleString ()

Restituisce una stringa con una rappresentazione sensibile alla lingua di questo numero

4 toPrecision ()

Restituisce una stringa che rappresenta il numero con una precisione specificata in notazione a virgola fissa o esponenziale

5 accordare()

Restituisce una stringa che rappresenta l'oggetto specificato nella radice specificata (base)

6 valore di()

Restituisce il valore primitivo dell'oggetto specificato.

Letterali binari e ottali

Prima di ES6, la soluzione migliore quando si trattava di rappresentazione binaria o ottale di interi era semplicemente passarli a parseInt () con la radice. In ES6, è possibile utilizzare il prefisso 0b e 0o per rappresentare rispettivamente i valori letterali interi binari e ottali. Allo stesso modo, per rappresentare un valore esadecimale, utilizzare il0x prefisso.

Il prefisso può essere scritto in maiuscolo o minuscolo. Tuttavia, si consiglia di attenersi alla versione minuscola.

Example − Binary Representation

console.log(0b001) 
console.log(0b010) 
console.log(0b011) 
console.log(0b100)

Il seguente output viene visualizzato in caso di corretta esecuzione del codice precedente.

1 
2 
3 
4

Example − Octal Representation

console.log(0o010)
console.log(0o100)

Il seguente output viene visualizzato in caso di corretta esecuzione del codice precedente.

8
64

Example − Hexadecimal Representation

console.log(0o010)
console.log(0o100)

Il seguente output viene visualizzato in caso di corretta esecuzione del codice precedente.

255
384

Estensione letterale dell'oggetto

ES6 introduce quanto segue syntax changes nella dichiarazione dei letterali oggetto.

  • Sintassi dell'inizializzatore di proprietà dell'oggetto
  • Sintassi delle proprietà calcolate
  • Sintassi del metodo concisa

Inizializzatore di proprietà dell'oggetto

In object property initializer syntax, possiamo inizializzare un oggetto direttamente con le variabili. Questo creerà attributi che hanno lo stesso nome di quello delle variabili.

<script>
   let firstName = 'Tutorials',lastName='Point'
   let company = {
      firstName,
      lastName
   }
   console.log(company)
   console.log(company.firstName)
   console.log(company.lastName)
</script>

L'output del codice sopra sarà come indicato di seguito:

{firstName: "Tutorials", lastName: "Point"}
Tutorials
Point

Proprietà calcolate

In computed properties syntaxla proprietà dell'oggetto può essere creata dinamicamente dalle variabili. Nell'esempio seguente, una variabile dal nomesuffix viene utilizzato per calcolare il file company oggetto.

<script>
   let suffix = 'Name'
   let company = {
      ['first'+suffix]:'Tutorials',
      ['last'+suffix]:'Point'
   }
   console.log(company)
   console.log(company['firstName'])
   console.log(company['lastName'])
</script>

L'output del codice sopra sarà come mostrato di seguito -

{firstName: "Tutorials", lastName: "Point"}
Tutorials
Point

In Concise method syntax possiamo usare e dichiarare un metodo direttamente senza l'uso di functionparola chiave. Questa è una sintassi semplificata per includere funzioni nei letterali oggetto.

<script>
   let firstName = 'Tutorials',lastName='Point'
   let company = {
      firstName,
      lastName,
      getFullName(){
         return this.firstName+" - "+this.lastName
      }
   }
   console.log(company.getFullName())
   console.log(company)
</script>

L'output del codice sopra sarà come indicato di seguito -

Tutorials - Point
{firstName: "Tutorials", lastName: "Point", getFullName: ƒ}