{ } · 2 / 4 / tab · minify
JSON formatter at validator
Nagdaragdag ang JSON formatter ng indentation sa compact na JSON: ang 60-byte na dokumento ay lumalaki sa 86 byte na may 2 espasyo at sa 102 byte na may 4. I-paste ang JSON para makuha ang naka-format o naka-minify na teksto, o ang line at column ng unang error.
- {"a": 1,} → 1:8
- 12345678901234567890 → 12345678901234567000
- 60 B → 86 B (2) → 102 B (4)
Tumatakbo ang lahat sa tab na ito at walang ina-upload. Sinusunod ng parser ang RFC 8259, kaya iniuulat bilang error ang mga comment, single quote, trailing comma at key na walang quote.
Scanned by NortonTM Safe Web
Sa isang tingin
- Presyo
- Walang singil
- Account
- Hindi kailangan
- Pamantayan
- RFC 8259 (JSON)
- Mga limitasyon
- 5 MB ng input, 512 antas ng nesting
- Output
- 2 espasyo, 4 na espasyo, tab o minified, puwedeng pagsunud-sunurin ang mga key
- Upload
- Wala — nananatili ang teksto sa tab ng browser mo
Mga error sa JSON at katumpakan ng numero
Galing ang mga bilang na ito sa parser na ginagamit ng page na ito. Nagsisimula sa 1 ang bilang ng mga line at column.
| Dokumento | Reason code | Line:column |
|---|---|---|
| {"a": 1,} | trailing_comma | 1:8 |
| {'a': 1} | single_quotes | 1:2 |
| [1, 2 | unexpected_end | 1:6 |
| {"a": 01} | bad_number | 1:8 |
| {"a": "x\q"} | bad_escape | 1:9 |
| {"a": 1 "b": 2} | missing_comma | 1:9 |
| Numero ayon sa pagkakasulat | Value na ibinabalik ng JSON.parse |
|---|---|
| 12345678901234567890 | 12345678901234567000 |
| 9007199254740993 | 9007199254740992 |
| 1.0000000000000001 | 1 |
| 1E400 | Infinity |
Paano mag-format ng JSON
I-paste ang JSON mo
Mag-type o mag-paste ng JSON na dokumento na hanggang 5 MB sa input box. May sample na roon para makita mo muna ang resulta.
Piliin ang output
Pumili ng 2 espasyo, 4 na espasyo, tab o ang minified na anyo. I-tick ang box para pagsunud-sunurin ang mga key ng bawat object ayon sa code-unit order.
Kopyahin o ayusin
Kopyahin o i-download ang resulta. Kung sira ang JSON, ibinibigay ng mensahe ang line, ang column at ang dahilan, at may caret na nagmamarka sa lugar sa linyang nagkamali.
Paano gumagana ang JSON formatter
Binabasa ng page ang teksto mo gamit ang sarili nitong parser para sa grammar ng JSON sa RFC 8259, at isinusulat itong muli gamit ang indentation na pinili mo. Dahil bahagi ng page ang parser, iisang mensahe ang ipinapakita ng bawat browser para sa iisang pagkakamali. Magkakaiba ang pagkakasabi ng built-in na JSON.parse sa mga error nito sa Chrome, Firefox at Safari, at hindi lahat ay tumuturo sa line at column.
Kinokopya nang eksakto ang mga numero at string escape ayon sa pagkaka-type mo. Ginagawa ng JSON.parse na 12345678901234567000 ang 12345678901234567890, dahil ang JavaScript number ay 64-bit float na may humigit-kumulang 15 hanggang 17 significant digit. Pinapanatili ng page na ito ang lahat ng 20 digit at sinasabi sa iyo kapag ma-ro-round ang isang numero. Sinasabi ng RFC 8259 na dapat natatangi ang mga pangalan ng object, kaya pinapanatili at iniuulat ang mga duplicate na key. Ang mga limitasyon ay 5 MB ng input at 512 antas ng nesting.
Mga tanong tungkol sa JSON formatter
Paano ako mag-format ng JSON online?
I-paste ang JSON sa input box. Lalabas agad ang naka-format na teksto, na may 2 espasyo, 4 na espasyo o isang tab sa bawat antas. Ang 60-byte na sample ay nagiging 86 byte na may 2 espasyo at 102 byte na may 4 na espasyo.
Ano ang ibig sabihin ng "unexpected token", at nasaan ang error ko?
Ibig sabihin, nakatagpo ang parser ng karakter na hindi pinapayagan ng JSON grammar sa puntong iyon. Pinangangalanan ng page na ito ang dahilan, ang line at ang column. Para sa {"a": 1,} iniuulat nito ang trailing_comma sa line 1, column 8.
Bakit error ang trailing comma sa JSON?
Nangangailangan ang grammar sa RFC 8259 ng value pagkatapos ng bawat comma, kaya hindi valid ang [1, 2,] at {"a": 1,}. Tumatanggap ng trailing comma ang mga JavaScript object literal, pero hindi ang JSON. Burahin ang huling comma.
Puwede bang magkaroon ng comment o single quote ang JSON?
Hindi. Walang comment sa RFC 8259, at double quote lang ang ginagamit ng mga string at key. Pinapayagan ng mga format tulad ng JSON5 at JSONC ang dalawa, pero ibang format ang mga iyon, at iniuulat ng page na ito ang mga ito bilang error.
Binabago ba ng formatter ang mga numero ko?
Hindi. Isinusulat muli ang mga numero at escape nang eksakto ayon sa pagkaka-type. Ro-round ng JSON.parse ang 12345678901234567890 sa 12345678901234567000, pero pinapanatili ng page na ito ang bawat digit, kaya walang nawawala sa pag-format.
Ina-upload ba saanman ang JSON ko?
Hindi. Tumatakbo ang page sa tab ng browser mo at walang ipinapadala sa anumang server. Kapag naka-load na ito, gumagana rin ito offline. Ang limitasyon ng input ay 5 MB.