--- title: Number.MAX_SAFE_INTEGER slug: Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER tags: - ECMAScript 2015 - JavaScript - Number - Property translation_of: Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER original_slug: Web/JavaScript/Referencia/Objetos_globales/Number/MAX_SAFE_INTEGER ---
La constante Number.MAX_SAFE_INTEGER
es el número mas grande 'seguro' en JavaScript (253 - 1
).
La fuente de este ejemplo interactivo está almacenada en GitHub. Si quieres contribuir al proyecto de ejmplos interactivos, por favor clona https://github.com/mdn/interactive-examples y envíanos un 'pull request'.
La constante MAX_SAFE_INTEGER
tiene un valor de 9007199254740991
(9,007,199,254,740,991 o ~9 mil billones). El razonamiento detrás de ese número es que JavaScript usa números flotantes de doble precisión tal como está especfificado en IEEE 754 por lo que puedes representar números de forma segura entre -(253 - 1)
y 253 - 1
.
Seguro, en este contexto, se refiere a la habilidad de representar enteros de forma exacta y compararlos de forma correcta. Por ejemplo, Number.MAX_SAFE_INTEGER + 1 === Number.MAX_SAFE_INTEGER + 2
evaluará como 'verdadero', lo cual es matemáticamente incorrecto. Ver {{jsxref("Number.isSafeInteger()")}} para más información.
Debido a que MAX_SAFE_INTEGER
es una propiedad estática de {{jsxref("Number")}}, siempre se usa como Number.MAX_SAFE_INTEGER
, en lugar de como una propiedad de un objeto {{jsxref("Number")}} que hayas creado.
Number.MAX_SAFE_INTEGER // 9007199254740991 Math.pow(2, 53) - 1 // 9007199254740991
Especificación | Estatus | Comentario |
---|---|---|
{{SpecName('ES2015', '#sec-number.max_safe_integer', 'Number.MAX_SAFE_INTEGER')}} | {{Spec2('ES2015')}} | Definición inicial. |
{{SpecName('ESDraft', '#sec-number.max_safe_integer', 'Number.MAX_SAFE_INTEGER')}} | {{Spec2('ESDraft')}} |
{{Compat("javascript.builtins.Number.MAX_SAFE_INTEGER")}}