JSON Stringify
JSON verisini kod, URL veya metin alanına kolayca yapıştırılabilen stringe dönüştürün ve gerektiğinde tekrar JSON olarak geri alın.
İlgili Öneriler
JSON Stringify ve string olarak gömme nedir?
JSON Stringify, JSON nesnesini veya dizisini string gösterimine dönüştürme işlemidir. JavaScript'te bunun standart yolu `JSON.stringify()` kullanmaktır.
Gerçek projelerde bu çıktı çoğu zaman kaynak koda, veritabanı alanına, URL parametresine veya başka bir JSON içine string değer olarak yerleştirilir. Bu durumda tırnak, satır sonu ve ters eğik çizgi karakterlerini bir kez daha escape etmek gerekir.
Bu araç standart stringify işlemini yapar, ardından dış tırnakları ekleyip gerekli escape'leri uygular. Parse modu da tam tersini yaparak okunabilir JSON'u geri getirir. Her şey yerel olarak tarayıcıda çalışır.
Kullanım senaryoları
- JSON'u JavaScript / Java / Python / Go içinde string literal olarak kullanmak
- API yanıtını başka bir JSON alanı içinde string olarak saklamak
- JSON stringini DB TEXT alanına veya Redis değerine yazmak
- JSON'u URL query parametresi veya header üzerinden taşımak
- Log ve config dosyalarındaki escape edilmiş JSON'u tekrar okunur hale getirmek
Nasıl Kullanılır
- Soldaki alana JSON veya string yapıştırın ya da örnek / dosya yükleme kullanın
- Stringify veya Parse modunu seçin ve gerekirse çıktı biçimini ayarlayın
- Sağdaki sonucu inceleyin ve koda, dokümana veya config'e kopyalayın
- İsterseniz `stringified.txt` ya da `parsed.json` olarak indirin
Özellikler
- Çift yönlü mod: Stringify ve Parse arasında geçiş yaparak iki yönlü dönüşüm sağlar
- Otomatik escape: tırnak, backslash, satır sonu ve sekme karakterlerini güvenli biçimde işler
- Farklı çıktı biçimleri: dış tırnaklı string, biçimlendirilmiş JSON veya tek satırlık compact çıktı alabilirsiniz
- Koda gömmeye uygun: JavaScript, Java, Python ve Go içinde kullanıma elverişli sonuç üretir
- URL ve veritabanı senaryoları için elverişli: JSON'u metin alanlarında saklamak veya servisler arasında taşımak kolaylaşır
- Tamamen yerel işlem: serileştirme ve geri çözme tarayıcı içinde yapılır
Kod Örnekleri
JavaScript: JSON'u gömülebilir stringe dönüştürme
javascriptconst data = { name: 'Alice', age: 30, tags: ['dev', 'writer'] };
const json = JSON.stringify(data, null, 2);
const embedded = '"' + json
.replace(/\\/g, '\\\\')
.replace(/"/g, '\\"')
.replace(/\n/g, '\\n')
.replace(/\r/g, '\\r')
.replace(/\t/g, '\\t') + '"';Python: json.dumps ile yeniden escape etme
pythonimport json
data = {"name": "Alice", "age": 30}
pretty = json.dumps(data, indent=2, ensure_ascii=False)
embedded = json.dumps(pretty)
restored = json.loads(json.loads(embedded))jq: JSON dosyasını stringe çevirme
bashjq -Rs . data.json
echo '"{\"name\":\"Alice\"}"' | jq -r .Sık Sorulan Sorular
JSON Stringify ile JSON.stringify() aynı şey mi?
Temel serileştirme mantığı aynıdır, ancak bu araç gömme için dış tırnak ve iç escape'leri de otomatik ekler.
JSON Escape ile farkı nedir?
JSON Stringify tüm JSON nesnesi üzerinde çalışır; JSON Escape ise düz string içindeki özel karakterleri işler.
Stringify sonrası JSON okunamaz hale gelir mi?
Hayır. Pretty çıktıda satır sonları ve girintiler korunur, böylece sonuç okunabilir kalır.
Parse modu `\n` ve `\"` dizilerini geri açabilir mi?
Evet. Girdi doğru escape edilmişse dış tırnakları kaldırır ve özel karakterleri geri yükler.
Çıktıyı doğrudan URL içine koyabilir miyim?
JSON açısından güvenlidir, ama URL için ayrıca `encodeURIComponent` kullanmanız tavsiye edilir.
İç içe JSON için uygun mu?
Evet. İçteki JSON'u stringe çevirip dış JSON içinde string değer olarak saklayabilirsiniz.
Sonucu dosya olarak indirebilir miyim?
Evet. Stringify modu `stringified.txt`, Parse modu `parsed.json` olarak indirir.
Verilerim sunucuya gönderiliyor mu?
Hayır. Her şey yerel çalıştığı için hassas JSON içerikleri de daha güvenli biçimde işlenir.
Sorun Giderme
Stringify sırasında Invalid JSON hatası alıyorum
Sona eklenmiş virgül, tek tırnak, tırnaksız key veya yorum satırı buna neden olabilir.
Parse sonrası sonuç JSON olmuyor
Dış tırnak eksik olabilir veya backslash dizileri bozulmuş olabilir. Girdi stringini kontrol edin.
Koda yapıştırınca SyntaxError oluşuyor
Tırnak ve backslash'leri elle değiştirince sonuç kolayca bozulur. Mümkünse aracı çıktısını aynen kullanın.
Büyük JSON dosyalarında tarayıcı yavaşlıyor
Birkaç MB üstünde bellek kullanımı artar. Büyük veriler için Node.js veya Python tercih edin.
Türkçe karakterler veya emoji `\uXXXX` olmuyor
Bu normaldir. JSON Unicode karakterleri doğrudan taşıyabilir. `\uXXXX` gerekiyorsa çıktı sonrası ek dönüşüm yapın.
Sözlük
- JSON.stringify
- JavaScript'in bir değeri JSON stringe çevirmek için kullandığı yerleşik metottur.
- JSON.parse
- JSON stringini tekrar nesneye veya diziye dönüştüren yerleşik JavaScript metodudur.
- Serialize
- Bellekteki veri yapısını saklanabilir veya aktarılabilir metin biçimine dönüştürme işlemidir.
- Deserialize
- String halindeki veriyi tekrar orijinal veri yapısına döndürme işlemidir.
- Escape
- Özel karakterlerin önüne ters eğik çizgi ekleyerek dış sözdizimini bozmadan güvenli hale getirme işlemidir.
- String Literal
- Kaynak kod içinde tırnaklarla çevrili sabit string değerdir.
- Double-Escape
- Zaten escape edilmiş stringin başka bir katmana gömülürken yeniden escape edilmesidir.
- URL Encode
- URL özel karakterlerini `%XX` biçimine dönüştürme işlemidir; JSON escape'ten ayrıdır.
JSON Stringify karakter escape tablosu
| Orijinal karakter | Stringify sonrası | Ad | Açıklama |
|---|---|---|---|
" | \" | Çift tırnak | Dış string'i kapatmaması için zorunlu |
\ | \\ | Ters eğik çizgi | Escape karakterinin kendisi de iki kez yazılır |
Satır sonu | \n | Newline | Çok satırlı içeriği tek satır stringe koymak için gerekir |
Sekme | \t | Tab | Kontrol karakteri olarak escape edilir |
CR | \r | Carriage Return | Windows satır sonunun parçası |
/ | / | Slash | Çoğu durumda olduğu gibi kalabilir |
JSON.stringify ile bu araç arasındaki fark
| Araç | Girdi | Çıktı | Tipik kullanım |
|---|---|---|---|
| JSON.stringify() | JS nesnesi | Standart JSON string | API, dosya kaydı, normal serileştirme |
| Bu aracın Stringify modu | JSON nesnesi | Dış tırnaklı gömülebilir string | Kod, DB, URL, iç içe JSON |
| Bu aracın Parse modu | Escape edilmiş string | Standart JSON nesnesi | Log veya DB içindeki JSON'u geri açmak |
| JSON Escape | Düz string | Sadece özel karakterleri escape edilmiş string | Metin parçalarını güvenli hale getirmek |
Authoritative References
- MDNJSON.stringify - MDN
- MDNJSON.parse - MDN
- IETFJSON belirtimi RFC 8259
- WikipediaJSON - Wikipedia
- JSON Compress
- CSV'den JSON'a
- JSON'den CSV'ye
- JSON Diff
- JSON Escape / Unescape
- JSON Düzleştirme
- JSON Biçimlendirici
- JSON Oluşturucu
- JSONPath Sorgu
- JSON Birleştir
- JSON Onarımı
- JSON Schema Doğrulayıcı
- JSON Sıralama
- JSON Stringify
- JSON'dan HTML'ye
- JSON'dan Java'ya
- JSON'den Markdown'a
- JSON to SQL
- JSON'dan TOML'e
- JSON'dan TypeScript'e
- XML'den JSON'a
- JSON'u XML'e donustur
- YAML'den JSON'a
- JSON → YAML Dönüştürücü
- JSON'dan Go'ya
- JSON'u Rust'a
- JSON to Swift
- JSON'dan C#'ye
- JSON'dan C++'ya
- JSON'dan PHP'ye
- JSON'u Python'a