JSON-formatter - JSON lokaal formatteren, valideren en vergelijken | POLPROG Naar de inhoud

JSON-formatter

JSON lokaal formatteren, valideren en vergelijken

Formatteer, valideer en vergelijk JSON in de browser, zonder dat er iets verstuurd wordt.

Webtool Web
Officiële productpagina Publisher: POLPROG
Officiële productpagina
3
Modi in één werkruimte
19
Benoemde syntaxisfouten
5 MiB
Maximale documentgrootte
0
Naar een server verstuurde gegevens
01JSON-formatter

Over

Drie modi, één werkruimte. Formatteren, Valideren en Vergelijken delen dezelfde parser en dezelfde editor, dus een document gedraagt zich hetzelfde welke modus het ook leest, en wisselen tussen de modi herformatteert nooit wat je hebt geplakt.

Wat elke modus doet

ModusWat hij doet
FormatterenHerschrijftOpnieuw inspringen met twee spaties, vier spaties of tabs, de witruimte er weer uit halen, of sleutels recursief sorteren in beide richtingen. Waarden, escapes en Unicode komen er precies zo uit als ze erin gingen, en arrays houden hun volgorde.
ValiderenLokaliseertBenoemt de fout en wijst hem aan, in plaats van te melden dat het document ongeldig is en jou te laten zoeken waar.
VergelijkenVergelijkt dataTwee documenten vergeleken op wat ze betekenen, met elke wijziging benoemd als toegevoegd, verwijderd, gewijzigd of van type gewijzigd.

Fouten worden gelokaliseerd, niet alleen gemeld

Negentien verschillende oorzaken worden benoemd, elk met regel, kolom en byte-offset, en de omliggende regels worden afgedrukt met een dakje onder het teken. Een komma voor een sluithaakje, een sleutel tussen enkele aanhalingstekens, een kaal woord, een commentaar, een ongeldige escape en een ruw stuurteken in een string lezen als zichzelf in plaats van als één algemene parseerfout.

Twee fouten die een geldig document alsnog kan dragen

Beide worden gemeld bij documenten die schoon parsen, want beide veranderen je data stilletjes. Een dubbele sleutel is door niets meer te redden: JSON.parse houdt alleen de laatste waarde, en elke andere parser die je zult tegenkomen doet hetzelfde, dus de waarschuwing noemt de sleutel en zijn regel zodat de bron gecorrigeerd kan worden. Een geheel getal boven 2^53 verandert van waarde op het moment dat JavaScript het leest, en zo wordt een 64-bits identificatie stilletjes een andere identificatie.

Wat de vergelijking weigert een verschil te noemen

Inspringing, regeleindes en de volgorde waarin objectsleutels zijn geschreven hebben in JSON geen betekenis en zijn dus geen verschillen. De volgorde van een array heeft die wel en wordt als reeks vergeleken, en daarom leest één ingevoegd element als één invoeging in plaats van alsof elk volgend element is veranderd.

Een document lezen dat te groot is om te scrollen

  • De boom opent één niveau tegelijk, zodat een groot bestand geen grote pagina wordt. Elke rij draagt het pad dat ernaartoe leidt, users[4].email, met een knop om het pad of de waarde te kopiëren.
  • Zoeken op sleutel, op waarde of op beide, met een aantal treffers en een stap door de resultaten.
  • Statistieken verschijnen zodra het document parst: sleutels, objecten, arrays, strings, getallen, booleans, null-waarden, maximale diepte, grootte en regels.
  • Conversies naar YAML, naar een TypeScript-interface of naar CSV. Wanneer een document geen tabel kan zijn, zegt de CSV-weg welke vorm hij nodig had in plaats van iets misleidends uit te spugen.

Het plafond is 5 MiB. Boven ongeveer 300 KiB gaan de syntaxkleuren uit zodat typen soepel blijft, en bij zeer grote documenten stopt de gedetailleerde vergelijking eerder en zegt dat; validatie en statistieken blijven over het hele bereik werken.

Achter deze pagina zit geen API-eindpunt. Het document wordt in het browsergeheugen geparst en bereikt nooit een server, er wordt niets naar de opslag of de adresbalk geschreven, en het enige dat tussen bezoeken bewaard blijft is de inspringing die je koos.

02Toepassing

Wat het oplost

Het probleem
  • "Ongeldige JSON" zonder regel, zonder kolom en zonder reden
  • Dubbele sleutels en 64-bits identifiers verdwijnen zonder een woord
  • Productiegegevens belanden op de website van een vreemde
Het resultaat
  • De fout heeft een naam, een regel, een kolom en context
  • Twee documenten vergeleken op gegevens, niet op witruimte
  • Het document verlaat je eigen machine nooit
Voor wie
  • Ontwikkelaars die met API’s, testdata en configuratiebestanden werken
  • Teams die gegevens tussen twee omgevingen vergelijken
  • Iedereen die snel een groot JSON-bestand moet lezen
03Belangrijkste functies

Belangrijkste functies

De belangrijkste mogelijkheden praktisch uitgelegd.

Formatteren, minificeren en sorteren

Spring opnieuw in met twee spaties, vier spaties of tabs, haal de witruimte er weer uit, of sorteer sleutels recursief in beide richtingen. Waarden, escapes en Unicode komen er precies zo uit als ze erin gingen, en arrays houden hun volgorde.

Fouten met regel, kolom en context

Negentien verschillende oorzaken krijgen een naam, van een komma te veel tot een sleutel tussen enkele aanhalingstekens, elk met regel, kolom en byte-offset en met de omliggende regels en een dakje onder het teken.

Dubbele sleutels en verloren precisie

Beide worden gemeld bij documenten die verder geldig zijn: JSON.parse houdt van een herhaalde sleutel alleen de laatste over, en gehele getallen boven 2^53 veranderen van waarde zodra JavaScript ze leest.

Een vergelijking die naar gegevens kijkt

Inspringing, regeleindes en sleutelvolgorde zijn geen verschil. Arrays worden als reeksen vergeleken, dus één ingevoegd element is één toevoeging, en elk verschil krijgt het label toegevoegd, verwijderd, gewijzigd of type gewijzigd.

Boomweergave met kopieerbare paden

De boom opent één niveau tegelijk, zodat een groot bestand geen grote pagina wordt. Elke regel draagt het pad dat ernaartoe leidt, users[4].email, met een knop om het pad of de waarde te kopiëren.

Zoeken en conversies

Zoek op sleutel, op waarde of op beide, met een aantal treffers en een stap door de resultaten. Een document wordt omgezet naar YAML, naar een TypeScript-interface of naar CSV, dat zegt welke vorm het nodig had wanneer een document geen tabel kan worden.

Er verlaat niets de browser

De tool heeft geen API-eindpunt. Het document wordt in het browsergeheugen gelezen en wordt nooit geüpload, gelogd of opgeslagen.

04Download

Toegang tot het product

Een duidelijk pad van de officiële bron naar je eerste geslaagde workflow.

Kies het juiste platform

Gebruik een van de officiële links voor je apparaat of browser.

Installeer of open

Volg de instructies van de store of open de webapplicatie. Geen installatieprogramma's van derden.

Configureer en begin

Bekijk de opties, kies je voorkeuren en begin met de belangrijkste workflow.

Officiële toegangsopties
05Technologie

Technologie achter het product

Een transparant overzicht van de kerntechnologieën waarmee dit product wordt gebouwd en onderhouden.

JavaScript
06Beveiliging

Privacy & beveiliging

Je gegevens blijven op je apparaat. Altijd.

Geen account, geen registratie
Geen API-eindpunt en geen netwerkverkeer
Documenten verlaten de browser nooit
Er wordt niets gelogd, opgeslagen of gevolgd