Qué hace esta herramienta
Un array JSON pasa a ser un documento JSON por línea.
[
{ "id": 1, "name": "Ada" },
{ "id": 2, "name": "Grace" }
]
{"id":1,"name":"Ada"}
{"id":2,"name":"Grace"}
Cada línea va minificada, y no es una elección estética: un documento indentado ocupa varias líneas, y en NDJSON un salto de línea significa siguiente registro. La indentación y el formato se excluyen.
La raíz tiene que ser un array
El array es la lista de registros. Un objeto en la raíz es un documento único; partirlo en líneas sería decidir que sus claves son registros, una suposición que esta herramienta no hace. La conversión se detiene.
Los elementos, en cambio, son libres: null, 42 y "texto" son documentos JSON válidos y, por tanto, líneas NDJSON válidas. Los registros suelen ser objetos, pero nada aquí lo exige.
Los enteros largos conservan sus cifras
[{ "id": 12345678901234567890 }]
sale con sus veinte cifras. Un conversor que pasa por un número de JavaScript escribe 12345678901234567000 en su lugar, sin decir nada: el valor cambia y el archivo sigue estando perfectamente bien formado.
Este hacía exactamente eso. El defecto se encontró al escribir esta página y se corrigió; ahora el identificador sobrevive a la ida y vuelta por NDJSON.
Un array vacío da un archivo vacío
[] no produce ninguna salida, y esa es la respuesta correcta: NDJSON no tiene otra manera de escribir «cero registros» que un archivo vacío. Eso implica que un resultado vacío y una entrada vacía se parecen, conviene saberlo antes de concluir que no ha pasado nada.
Privado por diseño
Todo se ejecuta localmente en tu navegador con JavaScript. Tus datos nunca se suben a un servidor, lo que hace que la herramienta sea segura para contenido sensible y funcione sin conexión.