Number.MAX_SAFE_INTEGER

La constante Number.MAX_SAFE_INTEGER es el número mas grande 'seguro' en JavaScript (253 - 1).

Atributos de la propiedad Number.MAX_SAFE_INTEGER
Sobrescribir No
Numerable No
Configurable No

Descripción

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)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 Number.isSafeInteger() para más información.

Debido a que MAX_SAFE_INTEGER es una propiedad estática de Number, siempre se usa como Number.MAX_SAFE_INTEGER, en lugar de como una propiedad de un objeto Number que hayas creado.

Ejemplos

Number.MAX_SAFE_INTEGER // 9007199254740991
Math.pow(2, 53) - 1     // 9007199254740991

Especificaciones

Especificación Estatus Comentario
ECMAScript 2015 (6th Edition, ECMA-262)
La definición de 'Number.MAX_SAFE_INTEGER' en esta especificación.
Standard Definición inicial.
ECMAScript (ECMA-262)
La definición de 'Number.MAX_SAFE_INTEGER' en esta especificación.
Living Standard  

Compatibilidad con navegadores

BCD tables only load in the browser

Ver también