Esses métodos numéricos podem ser usados em todos os números JavaScript:
Retorna um número como uma string
Retorna um número escrito em notação exponencial
Retorna um número escrito com um número de decimais
Retorna um número escrito com um comprimento especificado
Retorna um número como um número
O método toString()
retorna um número como uma string.
Todos os métodos numéricos podem ser usados em qualquer tipo de número (literais, variáveis ou expressões):
let x = 123;
x.toString();
(123).toString();
(100 + 23).toString();
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Number Methods</h2>
<p>The toString() method converts a number to a string.</p>
<p id="demo"></p>
<script>
let x = 123;
document.getElementById("demo").innerHTML =
x.toString() + "<br>" +
(123).toString() + "<br>" +
(100 + 23).toString();
</script>
</body>
</html>
toExponential()
retorna uma string, com um número arredondado e escrito usando notação exponencial.
Um parâmetro define o número de caracteres atrás do ponto decimal:
let x = 9.656;
x.toExponential(2);
x.toExponential(4);
x.toExponential(6);
O parâmetro é opcional. Se você não especificar, o JavaScript não arredondará o número.
toFixed()
retorna uma string, com o número escrito com um número específico de decimais:
let x = 9.656;
x.toFixed(0);
x.toFixed(2);
x.toFixed(4);
x.toFixed(6);
toFixed(2)
é perfeito para trabalhar com dinheiro.
toPrecision()
retorna uma string, com um número escrito com um comprimento especificado:
let x = 9.656;
x.toPrecision();
x.toPrecision(2);
x.toPrecision(4);
x.toPrecision(6);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Number Methods</h2>
<p>The toPrecision() method returns a string, with a number written with a specified length:</p>
<p id="demo"></p>
<script>
let x = 9.656;
document.getElementById("demo").innerHTML =
x.toPrecision() + "<br>" +
x.toPrecision(2) + "<br>" +
x.toPrecision(4) + "<br>" +
x.toPrecision(6);
</script>
</body>
</html>
valueOf()
retorna um número como um número.
let x = 123;
x.valueOf();
(123).valueOf();
(100 + 23).valueOf();
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Number Methods</h2>
<p>The valueOf() method returns a number as a number:</p>
<p id="demo"></p>
<script>
let x = 123;
document.getElementById("demo").innerHTML =
x.valueOf() + "<br>" +
(123).valueOf() + "<br>" +
(100 + 23).valueOf();
</script>
</body>
</html>
Em JavaScript, um número pode ser um valor primitivo (typeof=number) ou um objeto (typeof=objeto).
O método valueOf()
é usado internamente em JavaScript para converter Number objetos para valores primitivos.
Não há razão para usá-lo em seu código.
Todos os tipos de dados JavaScript têm um método valueOf()
e um método toString()
.
Existem 3 métodos JavaScript que podem ser usados para converter uma variável em um número:
Retorna um número convertido de seu argumento.
Analisa seu argumento e retorna um número de ponto flutuante
Analisa seu argumento e retorna um número inteiro
Os métodos acima não são métodos numéricos. Eles são métodos JavaScript globais.
O método Number()
pode ser usado para converter variáveis JavaScript em números:
Number(true);
Number(false);
Number("10");
Number(" 10");
Number("10 ");
Number(" 10 ");
Number("10.33");
Number("10,33");
Number("10 33");
Number("John");
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Global Methods</h2>
<p>The Number() method converts variables to numbers:</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
Number(true) + "<br>" +
Number(false) + "<br>" +
Number("10") + "<br>" +
Number(" 10") + "<br>" +
Number("10 ") + "<br>" +
Number(" 10 ") + "<br>" +
Number("10.33") + "<br>" +
Number("10,33") + "<br>" +
Number("10 33") + "<br>" +
Number("John");
</script>
</body>
</html>
Se o número não puder ser convertido, NaN
(Not a Number) será retornado.
Number()
também pode converter uma data em um número.
Number(new Date("1970-01-01"))
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Global Methods</h2>
<p>The Number() method can convert a date to a number:</p>
<p id="demo"></p>
<script>
let x = new Date("1970-01-01");
document.getElementById("demo").innerHTML = Number(x);
</script>
</body>
</html>
O método Date()
retorna o número de milissegundos desde 1.1.1970.
O número de milissegundos entre 02/01/1970 e 01/01/1970 é 86400000:
Number(new Date("1970-01-02"))
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Global Methods</h2>
<p>The Number() method can convert a date to a number:</p>
<p id="demo"></p>
<script>
let x = new Date("1970-01-02");
document.getElementById("demo").innerHTML = Number(x);
</script>
</body>
</html>
Number(new Date("2017-09-30"))
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Global Methods</h2>
<p>The Number() method can convert a date to a number:</p>
<p id="demo"></p>
<script>
let x = new Date("2017-09-30");
document.getElementById("demo").innerHTML = Number(x);
</script>
</body>
</html>
parseInt()
analisa uma string e retorna um número inteiro. Os espaços são permitido. Apenas o primeiro número é retornado:
parseInt("-10");
parseInt("-10.33");
parseInt("10");
parseInt("10.33");
parseInt("10 20 30");
parseInt("10 years");
parseInt("years 10");
Se o número não puder ser convertido, NaN
(Not a Number) será retornado.
parseFloat()
analisa uma string e retorna um número. Os espaços são permitido. Apenas o primeiro número é retornado:
parseFloat("10");
parseFloat("10.33");
parseFloat("10 20 30");
parseFloat("10 years");
parseFloat("years 10");
Se o número não puder ser convertido, NaN
(Not a Number) será retornado.
Estes métodos de objeto pertencem ao objeto Number:
Retorna verdadeiro se o argumento for um número inteiro
Retorna verdadeiro se o argumento for um número inteiro seguro
Converte uma string em um número
Converte uma string em um número inteiro
Os métodos numéricos acima pertencem ao Objeto Numérico do JavaScript.
Esses métodos só podem ser acessados como Number.isInteger()
.
Usar X.isInteger() onde X é uma variável resultará em um erro:
TypeError X.isInteger não é uma função
.
O método Number.isInteger()
retorna true
se o argumento for um número inteiro.
Number.isInteger(10);
Number.isInteger(10.5);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Numbers</h1>
<h2>The isInteger() Method</h2>
<p>The isInteger() method returns true if the argument is an integer.</p>
<p>Otherwise it returns false.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
Number.isInteger(10) + "<br>" + Number.isInteger(10.5);
</script>
</body>
</html>
Um número inteiro seguro é um número inteiro que pode ser representado exatamente como um número de precisão dupla.
O método Number.isSafeInteger()
retorna true
se o argumento for um número inteiro seguro.
Number.isSafeInteger(10);
Number.isSafeInteger(12345678901234567890);
Experimente você mesmo →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Numbers</h1>
<h2>The isSafeInteger() Method</h2>
<p>The isSafeInteger() method returns true if the argument is a safe integer.</p>
<p>Otherwise it returns false.</p>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
Number.isSafeInteger(10) + "<br>" + Number.isSafeInteger(12345678901234567890);
</script>
</body>
</html>
Inteiros seguros são todos números inteiros de -(253 - 1) a +(253 - 1).
Isto é seguro: 9007199254740991. Isto não é seguro: 9007199254740992.
Number.parseFloat()
analisa uma string e retorna um número.
Espaços são permitidos. Apenas o primeiro número é retornado:
Number.parseFloat("10");
Number.parseFloat("10.33");
Number.parseFloat("10 20 30");
Number.parseFloat("10 years");
Number.parseFloat("years 10");
Se o número não puder ser convertido, NaN
(Not a Number) será retornado.
Os métodos Number Number.parseInt()
e Number.parseFloat()
são iguais ao
Métodos globais parseInt()
e parseFloat()
.
O objetivo é a modularização de globais (para facilitar o uso do mesmo código JavaScript fora do navegador).
Number.parseInt()
analisa uma string e retorna um número inteiro.
Espaços são permitidos. Apenas o primeiro número é retornado:
Number.parseInt("-10");
Number.parseInt("-10.33");
Number.parseInt("10");
Number.parseInt("10.33");
Number.parseInt("10 20 30");
Number.parseInt("10 years");
Number.parseInt("years 10");
Se o número não puder ser convertido, NaN
(Not a Number) será retornado.
Para obter uma referência completa do número, visite nosso:
Referência completa do número JavaScript.
A referência contém descrições e exemplos de todas as propriedades e métodos de Number.