From 074785cea106179cb3305637055ab0a009ca74f2 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:42:52 -0500 Subject: initial commit --- .../global_objects/number/issafeinteger/index.html | 104 +++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 files/pt-br/web/javascript/reference/global_objects/number/issafeinteger/index.html (limited to 'files/pt-br/web/javascript/reference/global_objects/number/issafeinteger') diff --git a/files/pt-br/web/javascript/reference/global_objects/number/issafeinteger/index.html b/files/pt-br/web/javascript/reference/global_objects/number/issafeinteger/index.html new file mode 100644 index 0000000000..b6b9d823bc --- /dev/null +++ b/files/pt-br/web/javascript/reference/global_objects/number/issafeinteger/index.html @@ -0,0 +1,104 @@ +--- +title: Number.isSafeInteger() +slug: Web/JavaScript/Reference/Global_Objects/Number/isSafeInteger +tags: + - JavaScript + - Número + - metodo +translation_of: Web/JavaScript/Reference/Global_Objects/Number/isSafeInteger +--- +
{{JSRef}}
+ +

O método Number.isSafeInteger() determina se o valor fornecido é seja um número seguro.

+ +
{{EmbedInteractiveExample("pages/js/number-issafeinteger.html")}}
+ + + +

Um inteiro seguro é um inteiro que:

+ + + +

Exemplo, 253 - 1 é um inteiro seguro: pode ser exatamente representado, e nenhum outro numero arredondado existe para ele na represetanção IEEE-754. Em contexto, 253 não é um inteiro seguro: pode ser representado em IEEE-754, mas um inteiro 253 + 1 não pode ser diretamente representado em IEEE-754 mas instanciado do arrendamento de 253 sob arrendamento para o mais próximo e do arrendamento de zero a zero. Os inteiros seguros consistem em todos os inteiros de -(253 - 1) inclusive para 253 - 1 (sendo ± 9007199254740991 ou ± 9,007,199,254,740,991).  

+ +

A manipulação de valores entre ~9 quadrilhões com precisão total requer o uso de arbitrary precision arithmetic library (biblioteca aritmética de precisão arbitrária).  Veja What Every Programmer Needs to Know about Floating Point Arithmetic (o que todo programador precisa saber sobre aritmética de ponto flutuante) para mais informações sobre represetanções de número de ponto flutuante.

+ +

Para números inteiros maiores, considere o uso do tipo {{jsxref("BigInt")}}.

+ +

Sintaxe

+ +
Number.isSafeInteger(valorTest)
+
+ +

Parâmetros

+ +
+
valorTest
+
O valor a ser testado pode ser um número inteiro seguro.
+
+
+ +

Retorno

+ +

Um {{jsxref("Boolean")}} indica se o valor fornecido é um número seguro ou não.

+ +

Exemplos

+ +
Number.isSafeInteger(3);                    // true
+Number.isSafeInteger(Math.pow(2, 53));      // false
+Number.isSafeInteger(Math.pow(2, 53) - 1);  // true
+Number.isSafeInteger(NaN);                  // false
+Number.isSafeInteger(Infinity);             // false
+Number.isSafeInteger('3');                  // false
+Number.isSafeInteger(3.1);                  // false
+Number.isSafeInteger(3.0);                  // true
+
+ +

Polyfill (caso não exista suporte)

+ +
Number.isSafeInteger = Number.isSafeInteger || function (value) {
+   return Number.isInteger(value) && Math.abs(value) <= Number.MAX_SAFE_INTEGER;
+};
+
+ +

Especificações

+ + + + + + + + + + + + + + + + + + + +
EspecificaçãoStatusComéntario
{{SpecName('ES2015', '#sec-number.issafeinteger', 'Number.isSafeInteger')}}{{Spec2('ES2015')}}Definição inicial
{{SpecName('ESDraft', '#sec-number.issafeinteger', 'Number.isSafeInteger')}}{{Spec2('ESDraft')}}
+ +

Compatibilidade

+ + + +

{{Compat("javascript.builtins.Number.isSafeInteger")}}

+ +

Veja também

+ + -- cgit v1.2.3-54-g00ecf