Javascript Fundamentals - Objeto Number #1

October 25, 2016

O próximo objeto que vamos estudar será o Number. Ele é bastante simples, tem poucas propriedades e métodos. Acredito que em dois posts conseguimos conversar bem sobre ele. :)

MAX_VALUE, MIN_VALUE, POSITIVE_INFINITY, NEGATIVE_INFINITY e NaN.

Veremos também dois métodos:
toString() e valueOf.

MAX_VALUE

Usado para gerar o maior número possível representado no javascript. Qualquer valor acima disso é representado como Infinity.

// Qual o maior número possível?
var highest = Number.MAX_VALUE;

console.log(highest);
> 1.7976931348623157e+308

MIN_VALUE

Usado para gerar o menor número possível representado no javascript. Ao contrário do que se pode pensar, ele não retorna o maior número negativo possível. O retorno é o número positivo mais próximo de zero. Qualquer valor positivo abaixo disso é representado como 0.

// Qual o menor número possível?
var lowest = Number.MIN_VALUE;

console.log(lowest);
> 5e-324

POSITIVE_INFINITY

Essa propriedade retorna o infinito positivo. Lembra do valor acima do MAX_VALUE? É exatamente esse.

// Infinito positivo
var positiveInfinity = Number.POSITIVE_INFINITY;

console.log(positiveInfinity);
> Infinity

NEGATIVE_INFINITY

Essa propriedade retorna o infinito negativo. O menor número possível, incluindo números negativos dessa vez.

// Infinito negativo
var negativeInfinity = Number.NEGATIVE_INFINITY;

console.log(negativeInfinity);
> -Infinity

NaN

Essa propriedade retorna o valor NaN. Esse valor significa Not-a-Number e representa…algo que não é um número (elementar, meu caro Watson).

// Exemplo mais complexo desse universo (e dos paralelos também :p)
var valueNaN = Number.NaN;

console.log(valueNaN);
> NaN

.toString()

Usado para transformar um number em uma string. Esse é um dos métodos genéricos presentes em todos os outros objetos.

var idade = 21;

// Transformando em uma string
var texto = idade.toString();

console.log(texto);
> "21"

.valueOf()

Usado para retornar o valor primitivo de um objeto Number. Esse é um dos métodos genéricos presentes em todos os outros objetos. Um exemplo prático:

var numero = new Number(21);

// Fazendo uma rápida verificação no tipo...
console.log(typeof numero);
> object

// ...agora obtendo o valor primitivo desse objeto
var foo = numero.valueOf();

console.log(typeof foo);
> number

Esse post faz parte de uma série. Quer ver as outras postagens? Clique aqui.