Saltar al contenido

Formatear JSON sin perder enteros grandes

El formato debe hacer legible un documento sin cambiar sus identificadores. Compruebe la conservación de números antes de formatear IDs de 64 bits o decimales precisos.

Por Utilify team · Actualizado

Dónde se pierde la precisión

JavaScript Number representa enteros exactamente hasta 9.007.199.254.740.991. JSON.parse puede redondear un ID mayor antes del formato. Una vez redondeado, volver a formatearlo no recupera sus cifras originales.

{"id":9007199254740993,"amount":1.2300}

Preserved:
{
  "id": 9007199254740993,
  "amount": 1.2300
}

Elegir un formateador que preserve los números

El formateador JSON de Utilify copia cada número de la entrada sin convertirlo a Number. Conserva enteros grandes, ceros decimales finales y notación exponencial. La sangría y el orden opcional de claves cambian la presentación, no los números.

Pegue el ejemplo y compare el ID y el importe. Las advertencias del validador señalan enteros que otro consumidor JavaScript puede redondear. Un formato fiel no cambia cómo otra aplicación analiza el archivo.

Proteger toda la cadena de datos

Si controla el contrato de la API, considere IDs como cadenas y un tipo numérico adecuado para cálculos. No añada comillas automáticamente a números de otro sistema: cambiar el tipo puede romper su validación o comportamiento. Revise también las claves duplicadas.

Fuentes y normas

Todas las guías →