Number.prototype.toPrecision()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
O método toPrecision()
retorna uma string que representa o valor do objeto Number
com uma precisão específica.
Experimente
Sintaxe
numObj.toPrecision([precisão])
Parâmetros
precisão
-
Opcional. Um inteiro especificando o número de algarismos significativos.
Retorno
Uma string representando um objeto Number
em notação de ponto fixo ou exponencial arredondada segundo o parâmetro precisão
. Veja a discussão sobre arredondamento feita na documentação do método Number.prototype.toFixed()
, que também se aplica ao método toPrecision()
.
Se o parâmetro precisão
for omitido, este método terá o mesmo comportamento de Number.prototype.toString()
. Se o parâmetro precisão
for um valor não inteiro, ele será arredondado para a sua representação mais próxima em inteiro.
Exceções
RangeError
-
Se o valor de
precisão
não estiver compreendido entre 1 e 100 (inclusive), umRangeError
será lançado. É permitido às implementações suportar valores menores e maiores que esses, sendo um requisito do ECMA-262 que seja dado suporte a uma precisão de até 21 algarismos significativos.
Exemplos
Utilizando toPrecision
var numObj = 5.123456;
console.log(numObj.toPrecision()); // logs '5.123456'
console.log(numObj.toPrecision(5)); // logs '5.1235'
console.log(numObj.toPrecision(2)); // logs '5.1'
console.log(numObj.toPrecision(1)); // logs '5'
numObj = 0.000123;
console.log(numObj.toPrecision()); // logs '0.000123'
console.log(numObj.toPrecision(5)); // logs '0.00012300'
console.log(numObj.toPrecision(2)); // logs '0.00012'
console.log(numObj.toPrecision(1)); // logs '0.0001'
// observe que a notação exponencial pode ser retornado em alguns casos
console.log((1234.5).toPrecision(2)); // logs '1.2e+3'
Especificações
Specification |
---|
ECMAScript Language Specification # sec-number.prototype.toprecision |
Compatibilidade com navegadores
BCD tables only load in the browser