JSON formatteren, valideren en minifiëren

Plak je JSON: de tool controleert hem meteen, wijst de exacte plek van de fout aan met uitleg en levert het resultaat overzichtelijk of geminificeerd, klaar om te kopiëren. Er wordt niets naar een server gestuurd.

Plak of typ JSON – het wordt bij elke wijziging gecontroleerd.

Je tekst blijft in je browser: hij wordt niet verstuurd, niet opgeslagen en niet in de adresbalk gezet.

Sorteert de sleutels van elk object (ook geneste); de volgorde binnen arrays blijft ongewijzigd.
Je invoer wordt alleen in deze browser opgeslagen.

Resultaat

Resultaat
✓ Geldige JSON
Statistieken
Waarden: 15 · Objecten: 4 · Arrays: 1 · Sleutels: 12 · Diepte: 4 · Tekens: 226 → 321
Uitvoer
{ "bedrijf": "Voorbeeld B.V.", "opgericht": 2019, "actief": true, "omzet": 1250000.50, "vestigingen": [ { "stad": "Amsterdam", "medewerkers": 42 }, { "stad": "Rotterdam", "medewerkers": 17 } ], "contact": { "email": "info@voorbeeld.nl", "telefoon": null } }

Zo wordt het berekend

Wat de tool controleert

De basis is RFC 8259, de internetstandaard voor JSON (gelijkwaardig aan ECMA-404). De tool leest je tekst teken voor teken met een eigen parser en stopt bij de eerste overtreding. De melding geeft regel en kolom, markeert de plek met een ^ en legt uit wat er mis is – in elke browser identiek, want de ingebouwde meldingen van JSON.parse verschillen per browser en zijn vaak weinig zeggend (“Unexpected token”).

De meest voorkomende JSON-fouten

Opmaken, minifiëren, sorteren

De uitvoer wordt opnieuw opgebouwd uit de gevalideerde inhoud: Opmaken springt elk niveau in met 2 of 4 spaties of een tab, Minifiëren verwijdert alle overbodige witruimte (kleinste bestand). Getallen en strings blijven exact zoals geschreven – anders dan bij JSON.parse + JSON.stringify wordt 1.0 niet 1 en wordt 12345678901234567890 niet afgerond. Sorteren ordent sleutels op Unicode-codepunt, zoals in het JSON Canonicalization Scheme (RFC 8785): hoofdletters vóór kleine letters, letters met een accent (é, ë, ü…) na beide.

Waarschuwingen, geen fouten

Dubbele sleutels in hetzelfde object zijn volgens RFC 8259 niet verboden, maar wel onbetrouwbaar: de meeste programma’s houden alleen de laatste waarde aan. Een byte order mark aan het begin wordt door sommige lezers genegeerd – deze tool doet dat ook en meldt het.

Grenzen

De tool controleert de syntax, niet de betekenis: of verplichte velden ontbreken of typen kloppen, is het werk van een JSON Schema. Kolommen tellen Unicode-tekens vanaf 1 (een tab = 1 teken); een editor met een tabbreedte van 4 toont een hoger kolomnummer. Invoer is beperkt tot 5 miljoen tekens en 1.000 niveaus nesting.

Veelgestelde vragen

Wordt mijn JSON verstuurd of opgeslagen?

Nee. Valideren en formatteren gebeurt volledig in je browser. De tekst komt niet in de adresbalk terecht en wordt niet opgeslagen – alleen de gekozen opties (uitvoer, inspringing, sortering) staan in de link.

Waarom zijn commentaar en een komma na het laatste item niet toegestaan?

JSON is bewust minimaal, zodat elke programmeertaal het op dezelfde manier leest. Commentaar en een afsluitende komma horen bij uitbreidingen zoals JSON5 of JSONC (gebruikt door bijvoorbeeld VS Code-instellingen) – als puur JSON zijn zulke bestanden ongeldig.

Mijn JSON is geldig, maar het programma weigert het toch – waarom?

Meestal komt de inhoud niet overeen met wat het programma verwacht: een verplicht veld ontbreekt, er staat een getal waar een string hoort te staan, of de structuur wijkt af. Dat staat beschreven in een JSON Schema of de API-documentatie. Kijk ook naar de waarschuwing over dubbele sleutels.

Komen regel en kolom overeen met mijn editor?

Regels altijd. Kolommen tellen tekens vanaf 1; een tab telt als één teken, een emoji ook. Een editor die tabs als 4 kolommen toont, geeft dus een hoger getal. “Ga naar fout” zet de cursor precies op de juiste plek.

Hoe vind ik het probleem na “onverwacht einde”?

Bijna altijd ontbreekt een sluitende } of ] of een aanhalingsteken. De melding noemt de regel van het haakje dat nooit gesloten wordt – kijk eerst naar het einde van dat blok.

Bronnen en wettelijke basis

Bijgewerkt op:

Vergelijkbare tools