GlobalKit

JSON Biçimlendirici

JSON’u RFC 8259’a göre doğrulayın, 2 ya da 4 boşluk veya sekmeyle düzenleyin ya da küçültün. Hatalar satır ve sütunla gelir. Hiçbir şey yüklenmez.

En fazla 500.000 karakter. JSON’unuz cihazınızdan çıkmaz.

Nesne anahtarlarını her düzeyde Unicode kod noktasına göre sıralar.

ş, ü ya da emoji gibi karakterleri \uXXXX dizileri olarak yazar.

Doğrulamak ve biçimlendirmek için girdi alanına JSON yapıştırın.

Her şey tarayıcınızda çalışır; hiçbir şey yüklenmez.

Girdi alanına JSON yapıştırın; araç doğrular, seçtiğiniz girintiyle gösterir ve içeriğini listeler. Her şey cihazınızda işlenir, metin hiçbir yere yüklenmez.

Nasıl çalışır

Araç metni kendi ayrıştırıcısıyla RFC 8259 dilbilgisine (ECMA-404 ile aynıdır) göre denetler. JSON.parse kullanmaz; iki nedeni var. JSON.parse hata iletileri motordan motora değişir ve güvenilir satır/sütun vermez, ayrıca her sayıyı double'a çevirerek bazı değerleri sessizce değiştirir. Ayrıştırıcı özyineleme yerine kendi yığınını tutar; bu yüzden derin iç içe geçme çağrı yığınını taşırmaz ve yapıştırdığınız hiçbir şey eval'e verilmez.

Dilbilgisinin istedikleri:

Metin geçerliyse çıktı seçeneklerinize göre üretilir. Girinti 2 boşluk, 4 boşluk, sekme ya da hiç (küçültülmüş; dizelerin dışında boşluk yok) olabilir. Boş nesne ve diziler {} ve [] yazılır. Nesne üyeleri kaynak sırasını korur; Anahtarları sırala açılırsa her düzeyde Unicode kod noktasına göre sıralanır, diziler asla yeniden sıralanmaz. ASCII dışı karakterleri kaçırt U+0080 ve üstündeki her karakteri \uXXXX olarak yazar; emoji iki kaçıştan oluşan bir vekil çifti olur.

Sayılar ham metin olarak kopyalanır: 0.10 0.10, 1.0E+2 1.0E+2 kalır ve 2^53'ün üstündeki tam sayılar yuvarlanmaz. Dizeler en az kaçışla yeniden yazılır: \/ ve \u0041 sırasıyla / ve A olur; UTF-8 ile yazılamayan tek başına vekil kaçışı kaçış olarak kalır.

Sonucun altında istatistikler listelenir: nesne, dizi, anahtar, dize değeri (anahtarlar sayılmaz), sayı, mantıksal değer, null, en derin iç içe geçme ve girdi ile çıktının UTF-8 bayt boyutu. Tek bir sayı ya da dize belgesinin derinliği 0, [] için 1'dir.

Örnekler

Hata konumları. Geçersiz JSON'da araç satırı, sütunu, hatalı metni ve satırın kendisini bir işaretle gösterir. Konumlar aracın kendi testlerinden gelir:

GirdiKodSatırSütunBulunan
[1,2,]TRAILING_COMMA15,
['a']SINGLE_QUOTES12'
[01]INVALID_NUMBER1201
[.5]INVALID_NUMBER12.5
[NaN]INVALID_NUMBER12NaN
[True]INVALID_LITERAL12True
[1 "a"]UNEXPECTED_TOKEN14"
[1,2UNEXPECTED_END15(girdinin sonu)
[1]]EXTRA_DATA_AFTER_VALUE14]

Birden çok satırda konum satır sonlarını izler. Aşağıdaki belgede hata 3. satırın 8. sütunundadır, çünkü tru bir sabit değer değildir (araç INVALID_LITERAL bildirir, bulunan tru):

{
  "a": 1,
  "b": tru
}
  1. satırın başındaki // c gibi bir yorum, 3. satır 1. sütunda COMMENT olarak bildirilir. {"a":1} // x 1. satır 9. sütunda COMMENT verir. ["😀", x] için sütun 7 değil 8'dir; çünkü emoji iki UTF-16 kod birimi tutar.

Türkçe metin ve kaçışlar. {"şehir":"İstanbul","ad":"Çağrı","sayı":3} girdisi, Anahtarları sırala açık ve küçültme seçiliyken şunu verir:

{"ad":"Çağrı","sayı":3,"şehir":"İstanbul"}

ş (U+015F), s'den sonra gelir; çünkü sıralama Türk alfabesine değil kod noktasına göredir. ASCII dışı karakterleri kaçırt açılınca aynı çıktı şuna dönüşür:

{"ad":"\u00c7a\u011fr\u0131","say\u0131":3,"\u015fehir":"\u0130stanbul"}

Kod noktası sıralaması büyük harfi küçükten önce koyar: {"b":1,"a":{"z":1,"y":2},"B":3} sıralanınca {"B":3,"a":{"y":2,"z":1},"b":1} olur.

İstatistik. [true,false,null,1,2.5,"a","b",{"k":"v"},[]] belgesinde 2 mantıksal değer, 1 null, 2 sayı, 3 dize değeri (a, b ve v), 1 anahtarlı 1 nesne ve 2 dizi vardır; en derin iç içe geçme 2'dir.

Büyük sayılar. {"id": 9007199254740993, "ok": 1234567890123456} içinde ilk tam sayı, JSON.parse'ın 9007199254740992'ye yuvarlayacağı bir sayı olarak bildirilir. İkincisi 16 haneli olsa da double'a tam sığar; sayılmaz. 1E400 gibi bir sayı olduğu gibi geri yazılır, oysa JSON.parse onu Infinity yapar.

Dikkat edilecekler

Sık sorulan sorular

Son güncelleme: 11.10.2026

İlgili araçlar