Cara escape string untuk JSON
- Pilih mode: Escape, Unescape, Stringify JSON, atau Parse string JSON.
- Ketik atau tempel input; hasilnya langsung muncul. Saat melakukan escape, tentukan apakah perlu menambahkan tanda kutip pembungkus dan apakah karakter non-ASCII ditulis sebagai
\uXXXX. - Salin hasilnya, atau tekan Tukar untuk membalik operasi dan memastikan hasilnya kembali seperti semula.
Daftar escape sequence JSON
| Karakter | Hasil escape |
|---|---|
Tanda kutip ganda " | \" |
Backslash \ | \\ |
| Line feed (baris baru) | \n |
| Carriage return | \r |
| Tab | \t |
| Backspace, form feed | \b, \f |
| Karakter kontrol lain U+0000–U+001F | \u0000 … \u001f |
| Karakter apa pun (opsional) | \uXXXX, mis. é → \u00e9, 😀 → \ud83d\ude00 |
Garis miring / (opsional) | \/ |
Tanda kutip tunggal tidak pernah perlu di-escape di JSON, karena string JSON selalu memakai tanda kutip ganda.
Stringified JSON: JSON di dalam string
Stringified JSON adalah dokumen JSON yang disimpan di dalam string JSON – misalnya field API seperti "payload": "{\"id\":7}", atau JSON yang disimpan di kolom database, environment variable, atau baris log. Stringify JSON membuat string seperti itu dari sebuah dokumen; Parse string JSON membukanya kembali, bahkan jika di-stringify dua kali, lalu memformat hasilnya.
- JavaScript:
JSON.stringify(text)untuk escape,JSON.parse(literal)untuk unescape. - Python:
json.dumps(text)danjson.loads(literal). - PHP:
json_encode($text)danjson_decode($literal).
Pertanyaan yang sering diajukan
Karakter apa saja yang wajib di-escape di JSON?
Hanya tanda kutip ganda, backslash, dan karakter kontrol U+0000 sampai U+001F, seperti baris baru dan tab. Selain itu – termasuk é, 中, dan emoji – boleh ditulis apa adanya di JSON UTF-8.
Mengapa muncul \u00e9, bukan é?
Beberapa program menulis setiap karakter non-ASCII sebagai escape \uXXXX. Kedua bentuk itu artinya sama; Unescape mengubah escape tersebut kembali menjadi teks yang mudah dibaca.
Apa bedanya escape dan stringify?
Escape mengubah teks apa pun menjadi string literal JSON. Stringify terlebih dahulu memeriksa bahwa input adalah JSON yang valid, me-minify-nya, lalu melakukan escape, sehingga hasilnya berupa string yang berisi dokumen JSON.
Bisakah saya unescape string tanpa tanda kutip luar?
Bisa. Tempel isinya dengan atau tanpa tanda kutip pembungkus; tanda kutip yang belum di-escape dan baris baru asli juga tetap bisa diproses.