Jason memiliki JSON yang besar tetapi tidak dapat dibaca, jadi dia perlu memproduksinya.
Memformat Spec
JSON memiliki 4 jenis:
- Angka; Hanya
0-9
- String;
"
String dikutip ganda lolos dengan\
- Array; Dibatasi oleh
[]
, dengan item yang dipisahkan oleh,
, item dapat berupa jenis ini - Benda; Dibatasi oleh
{}
, format adalahkey: value
tempat kunci adalah string dan nilainya adalah salah satu dari jenis ini
Jarak
- Array harus memiliki tepat satu spasi setelah koma di antara item
- Objek harus memiliki hanya satu ruang antara kunci dan nilai, setelah
:
Lekukan
- Setiap level bertelur memiliki 2 indentasi lebih dari sebelumnya
- Setiap pasangan objek kunci / nilai selalu pada barisnya sendiri. Objek diindentasi
- Array diindentasikan di beberapa baris jika berisi array atau objek lain. Kalau tidak array tetap pada satu baris
Aturan
- Built-in yang meremehkan tugas ini tidak diizinkan.
- Seperti biasa, celah standar tidak diizinkan
Contohnya
[1,2,3]
[1, 2, 3]
{"a":1,"b":4}
{
"a": 1,
"b": 4
}
"foo"
"foo"
56
56
{"a":[{"b":1,"c":"foo"},{"d":[2,3,4,1], "a":["abc","def",{"d":{"f":[3,4]}}]}]}
{
"a": [
{
"b": 1,
"c": "foo"
},
{
"d": [2, 3, 4, 1],
"a": [
"abc",
"def",
{
"d": {
"f": [3, 4]
}
}
]
}
]
}
[2,["foo123 ' bar \" baz\\", [1,2,3]]]
[
2,
[
"foo123 ' bar \" baz\\",
[1, 2, 3]
]
]
[1,2,3,"4[4,5]"]
[1, 2, 3, "4[4,5]"]
[1,2,3,{"b":["{\"c\":[2,5,6]}",4,5]}]
[
1,
2,
3,
{
"b": ["{\"c\":[2,5,6]}", 4, 5]
}
]
1
Apakah JSP parsing builtin diizinkan?
—
PurkkaKoodari
Bisakah objek / array kosong? Bisakah kita masih mencetak spasi setelah koma dalam array jika mereka membelah beberapa baris?
—
Martin Ender
@ MartinBüttner tidak, dan ya
—
Downgoat
@ Pietu1998 hm, saya akan mengatakan tidak
—
Downgoat
Apakah bahasa parser bahasa diizinkan?
—
Mama Fun Roll