ES6 - Número
O objeto Number representa a data numérica, inteiros ou números de ponto flutuante. Em geral, você não precisa se preocupar com objetos Number porque o navegador converte automaticamente os literais de número em instâncias da classe de número.
A seguir está a sintaxe para criar um objeto numérico.
var val = new Number(number);
No lugar de number, se você fornecer qualquer argumento não numérico, o argumento não pode ser convertido em um number, ele retorna NaN (Não é um número).
Propriedades do número
Sr. Não | Descrição da Propriedade |
---|---|
1 | Number.EPSILON O menor intervalo entre dois números representáveis. |
2 | Number.MAX_SAFE_INTEGER O número inteiro seguro máximo em JavaScript (2 ^ 53 - 1). |
3 | Number.MAX_VALUE O maior número representável positivo. |
4 | MIN_SAFE_INTEGER O número inteiro seguro mínimo em JavaScript (- (2 ^ 53 - 1)). |
5 | Number.MIN_VALUE O menor número representável positivo - isto é, o número positivo mais próximo de zero (sem realmente ser zero) |
6 | Number.Nan Valor especial "não é um número" |
7 | Number.NEGATIVE_INFINITY Valor especial representando infinito negativo; retornou em estouro |
8 | Number.POSITIVE_INFINITY Valor especial representando infinito; retornou em estouro |
9 | Number.prototype Valor especial representando infinito; retornou em estouro |
Métodos Numéricos
Sr. Não | Método e Descrição |
---|---|
1 | Number.isNaN () Determina se o valor passado é NaN. |
2 | Number.isFinite () Determina se o valor passado é um número finito. |
3 | Number.isInteger () Determina se o valor passado é um número inteiro. |
4 | Number.isSafeInteger () Determina se o valor passado é um número inteiro seguro (número entre - (253 - 1) e 253 - 1) |
5 | Number.parseFloat () O valor é o mesmo que parseFloat () do objeto global |
6 | Number.parseInt () O valor é o mesmo que parseInt () do objeto global |
Métodos de número de instâncias
O objeto Number contém apenas os métodos padrão que fazem parte da definição de cada objeto.
Sr. Não | Método e descrição da instância |
---|---|
1 | toExponential () Retorna uma string que representa o número em notação exponencial |
2 | toFixed () Retorna uma string que representa o número em notação de ponto fixo |
3 | toLocaleString () Retorna uma string com uma representação sensível ao idioma deste número |
4 | toPrecision () Retorna uma string que representa o número com uma precisão especificada em notação de ponto fixo ou exponencial |
5 | para sequenciar() Retorna uma string que representa o objeto especificado na raiz especificada (base) |
6 | valor de() Retorna o valor primitivo do objeto especificado. |
Literais binários e octais
Antes do ES6, sua melhor aposta quando se trata de representação binária ou octal de inteiros era apenas passá-los para parseInt () com a raiz. No ES6, você pode usar o prefixo 0b e 0o para representar literais inteiros binários e octais, respectivamente. Da mesma forma, para representar um valor hexadecimal, use o0x prefixo.
O prefixo pode ser escrito em maiúsculas ou minúsculas. No entanto, sugere-se manter a versão em minúsculas.
Example − Binary Representation
console.log(0b001)
console.log(0b010)
console.log(0b011)
console.log(0b100)
A seguinte saída é exibida na execução bem-sucedida do código acima.
1
2
3
4
Example − Octal Representation
console.log(0o010)
console.log(0o100)
A seguinte saída é exibida na execução bem-sucedida do código acima.
8
64
Example − Hexadecimal Representation
console.log(0o010)
console.log(0o100)
A seguinte saída é exibida na execução bem-sucedida do código acima.
255
384
Extensão literal do objeto
ES6 apresenta a seguir syntax changes na declaração de literais de objeto.
- Sintaxe do inicializador de propriedade do objeto
- Sintaxe de propriedades computadas
- Sintaxe de método concisa
Inicializador de propriedade de objeto
Dentro object property initializer syntax, podemos inicializar um objeto diretamente com variáveis. Isso criará atributos com o mesmo nome das variáveis.
<script>
let firstName = 'Tutorials',lastName='Point'
let company = {
firstName,
lastName
}
console.log(company)
console.log(company.firstName)
console.log(company.lastName)
</script>
A saída do código acima será conforme fornecido abaixo -
{firstName: "Tutorials", lastName: "Point"}
Tutorials
Point
Propriedades Computadas
Dentro computed properties syntaxa propriedade do objeto pode ser criada dinamicamente a partir de variáveis. No exemplo a seguir, uma variável com o nomesuffix é usado para calcular o company objeto.
<script>
let suffix = 'Name'
let company = {
['first'+suffix]:'Tutorials',
['last'+suffix]:'Point'
}
console.log(company)
console.log(company['firstName'])
console.log(company['lastName'])
</script>
A saída do código acima será conforme mostrado abaixo -
{firstName: "Tutorials", lastName: "Point"}
Tutorials
Point
Dentro Concise method syntax podemos usar e declarar um método diretamente sem o uso de functionpalavra-chave. Esta é uma sintaxe simplificada para incluir funções em literais de objeto.
<script>
let firstName = 'Tutorials',lastName='Point'
let company = {
firstName,
lastName,
getFullName(){
return this.firstName+" - "+this.lastName
}
}
console.log(company.getFullName())
console.log(company)
</script>
A saída do código acima será conforme mencionado abaixo -
Tutorials - Point
{firstName: "Tutorials", lastName: "Point", getFullName: ƒ}