Tipo de número JavaScript

Resumo : neste tutorial, você aprenderá sobre o  Numbertipo JavaScript e seus métodos úteis para trabalhar com números de forma eficaz.

Introdução ao tipo de número JavaScript

Além do tipo de número primitivo , o JavaScript também fornece o Numbertipo de referência para valores numéricos.

Para criar um Numberobjeto, você usa o Numberconstrutor e passa um valor numérico da seguinte forma:

var numberObject = new Number(100);Linguagem de código:  JavaScript  ( javascript )

Este exemplo define a numberObject com um valor numérico de  100.

Para obter o valor primitivo de um Numberobjeto, você usa o valueOf()método a seguir:

console.log(numberObject.valueOf()); // 100Linguagem de código:  JavaScript  ( javascript )

Para obter um valor numérico como uma string, você usa os métodos toString()ou toLocaleString().

O toString()método aceita um argumento opcional que determina a base na qual o número será apresentado. A raiz (ou base) é o número de dígitos exclusivos que representam números em um sistema numeral posicional.

Por exemplo, o sistema decimal usa dez dígitos de 0 a 9, portanto, a base é 10.

Veja o exemplo a seguir:

var aNumber = new Number(10);
console.log(aNumber.toString()); // "10"Linguagem de código:  JavaScript  ( javascript )

Neste exemplo o aNumbertem um valor primitivo de 10, portanto, o toString()método retorna 10 no sistema decimal.

No entanto, o exemplo a seguir retorna a forma binária da aNumbervariável.

console.log(aNumber.toString(2)); // "1010"Linguagem de código:  JavaScript  ( javascript )

Se você chamar um método em um valor numérico primitivo, o JavaScript o converterá Numbertemporariamente em um objeto. Esse recurso é chamado de tipos de wrapper primitivos em JavaScript . Por exemplo:

let x = 10;
console.log(x.toString(16)); // "a"Linguagem de código:  JavaScript  ( javascript )

Formatando números

Para formatar um número com um número especificado de casas decimais, você usa o  toFixed()método.

O toFixed()método aceita um argumento que indica quantas casas decimais devem ser utilizadas.

numberObject.toFixed(decimalPlaces);Linguagem de código:  CSS  ( css )

O toFixed()método retorna a string correspondente do número usando notação de ponto fixo. Aqui está um exemplo.

var distance = 19.006
console.log(distance.toFixed(2)); // 19.01

distance = 19.004;
console.log(distance.toFixed(2)); // 19.00Linguagem de código:  JavaScript  ( javascript )

É importante observar que os navegadores da Web podem usar métodos de arredondamento de maneira diferente. Portanto, você deve ter cuidado ao utilizar o toFixed()método, principalmente para aplicações que tratam de valores monetários.

Para formatar um número em notação eletrônica, você usa o toExponential()método mostrado no exemplo a seguir.

var x = 10, y = 100, z = 1000;

console.log(x.toExponential());
console.log(y.toExponential());
console.log(z.toExponential());

// "1e+1"
// "1e+2"
// "1e+3"Linguagem de código:  JavaScript  ( javascript )

Para obter uma representação de string de um objeto numérico com a precisão especificada, você usa o toPrecision()método.

numberObject.toPrecision(precision);Linguagem de código:  CSS  ( css )

O precisionargumento determina o número de dígitos significativos.

O toPrecision()método retorna a representação de string de um  Numberobjeto em notação exponencial ou ponto fixo arredondado para dígitos significativos de precisão.

Observe que se você omitir o argumento de precisão, o toPrecision()método se comportará como o toString()método. Veja os seguintes exemplos:

let x = 9.12345;

console.log(x.toPrecision());    // '9.12345'
console.log(x.toPrecision(4));   // '9.123'
console.log(x.toPrecision(3));   // '9.12'
console.log(x.toPrecision(2));   // '9.1'
console.log(x.toPrecision(1));   // '9'Linguagem de código:  JavaScript  ( javascript )

A notação eletrônica pode ser retornada em alguns casos, por exemplo:

x = 123.5;
console.log(x.toPrecision(2)); // "1.2e+2"Linguagem de código:  JavaScript  ( javascript )

Objeto de número JavaScript vs. número primitivo

A tabela a seguir ilustra as diferenças entre um Numberobjeto e um número primitivo:

 Operador Objeto numérico Valor numérico
 typeof  "object"  "number"
 instanceof Number  true  false

E aqui estão alguns exemplos:

let numberObject = new Number(10);
let number = 10;

// typeof
console.log(typeof numberObject);
console.log(typeof number);
// instanceof
console.log(numberObject instanceof Number); // true
console.log(number instanceof Number); // falseLinguagem de código:  JavaScript  ( javascript )

Neste tutorial, você aprendeu sobre o Numbertipo e alguns métodos úteis para formatar números.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *