> formater | valider | minifiser <
// Formater, valider og minifiser JSON-data umiddelbart
Pen Utskrift
Forskjønn JSON med tilpassbart innrykk. Velg 2 mellomrom, 4 mellomrom eller tabulatorer.
Kompakt Utdata
Minifiser JSON ved å fjerne alle mellomrom. Reduser filstørrelse for produksjon og API-er.
Syntakssjekk
Valider JSON-syntaks umiddelbart. Få detaljerte feilmeldinger.
// OM JSON-FORMATERING
Hva er JSON:
JSON (JavaScript Object Notation) er et lettvekts datautvekslingsformat definert av RFC 8259. Det er enkelt for mennesker å lese og skrive, og enkelt for maskiner å parse og generere.
Eksempel:
{"name":"John","age":30} → {\n "name": "John",\n "age": 30\n}
Vanlige bruksområder:
- >API-respons feilsøking og inspeksjon
- >Formatering av konfigurasjonsfiler
- >Datavalidering før behandling
- >Størrelsesreduksjon med minifisering
- >Nøkkelsortering for konsistent utdata
>> ofte stilte spørsmål
Sp: Hva er en JSON formatter?
Sv: En JSON formatter tar rå eller minifisert JSON-data og reformaterer den med riktig innrykk og linjeskift.
Sp: Hva er forskjellen mellom forskjønnelse og minifisering?
Sv: Forskjønnelse legger til innrykk og linjeskift. Minifisering fjerner alle unødvendige mellomrom for å redusere filstørrelsen.
Sp: Hvordan fungerer JSON-validering?
Sv: JSON-validering sjekker om inndata er i samsvar med JSON-spesifikasjonen (RFC 8259), inkludert parenteser, anførselstegn og datatyper.
Sp: Hva gjør nøkkelsortering?
Sv: Alfabetisk sortering omorganiserer alle objektnøkler i JSON-strukturen for enkel sammenligning og konsistens.
Sp: Hvordan sammenlignes JSON med YAML?
Sv: JSON bruker krøllparenteser med streng syntaks, mens YAML bruker innrykk. JSON støttes bredere i API-er. YAML er mer lesbart men mer komplekst å parse.
// Vanlige JSON-feil
Disse skrivemåtene fungerer i JavaScript, men er ugyldige i streng JSON.
| Ugyldig | Gyldig |
|---|---|
| {'a': 1} | {"a": 1} |
| {"a": 1,} | {"a": 1} |
| {a: 1} | {"a": 1} |
| {"a": undefined} | {"a": null} |
| {"a": 01} | {"a": 1} |
// Formater JSON i kode
JavaScript JSON.stringify(obj, null, 2) Python json.dumps(obj, indent=2, ensure_ascii=False) PHP json_encode($obj, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE) Go json.MarshalIndent(v, "", " ") Java new ObjectMapper().writerWithDefaultPrettyPrinter() CLI jq . file.json CLI python3 -m json.tool file.json
>> Flere spørsmål
S: Hvilken innrykk bør jeg bruke: 2 mellomrom, 4 mellomrom eller tabulatorer?
S: Det er en teamkonvensjon; det viktigste er konsekvens. 2 mellomrom er vanlig på nett og sparer bredde ved dyp nesting, 4 mellomrom er vanlig i Python, og tabulatorer lar hver enkelt velge visningsbredde. For overføring er minifisert JSON uten innrykk minst.
S: Hvorfor er JSON-en min ugyldig?
S: De vanligste årsakene er enkle anførselstegn i stedet for doble, nøkler uten anførselstegn, komma etter siste element, kommentarer, undefined, NaN eller innledende nuller i tall. Feilmeldingen oppgir vanligvis linje og kolonne for den første feilen.
S: Hva er JSON5 og JSONC, og hvordan henger de sammen med JSON?
S: JSON5 og JSONC er utvidelser som tillater kommentarer, avsluttende komma og andre skrivemåter (f.eks. i tsconfig.json eller VS Code-innstillinger). De er ikke gyldig JSON: formatereren forventer streng JSON, så fjern kommentarer og avsluttende komma først.