Nasıl kullanılır?
- JSON'unuzu giriş kutusuna yapıştırın veya “Örnek dene”ye basın.
- Girinti biçimini (2 boşluk, 4 boşluk veya sekme) seçin; isterseniz anahtarları alfabetik olarak sıralayın.
- Biçimlendirilmiş sonucu sağda görüntüleyin. Tüm boşlukları kaldırmak için Küçült'e basın.
- JSON'da sözdizimi hatası varsa belirtilen satır ve sütundaki hatayı düzeltin, ardından sonucu kopyalayın veya .json dosyası olarak indirin.
Nasıl çalışır?
Biçimlendirici, metninizi tarayıcının yerleşik JSON ayrıştırıcısıyla ayrıştırır ve seçtiğiniz girintiyle yeniden yazar. Böylece çıktı her zaman geçerli ve tutarlı biçimde girintilenmiş JSON olur. Küçültme işlemi aynı veriyi boşluk veya satır sonu olmadan yazar; bu, ağ üzerinden göndermek veya bir yapılandırma değerinde saklamak için en küçük biçimdir.
Girdi geçerli JSON olmadığında, katı bir denetleyici ilk sorunu bulur ve satır ile sütununu bildirir. Ayrıca sondaki virgüller, tek tırnaklar, tırnaksız anahtarlar, yorumlar ve JavaScript'te bulunup JSON'da bulunmayan NaN veya undefined gibi değerler hakkında anlaşılır açıklamalar sunar. Tarayıcıların kendi JSON hata mesajları farklı biçimlerde olduğundan konum, tarayıcı mesajından alınmak yerine araç tarafından hesaplanır.
Yeniden biçimlendirmenin sınırlarını göz önünde bulundurun. Sayılar çift duyarlıklı kayan nokta olarak saklanır. Bu nedenle bazı veritabanı kimlikleri gibi 9,007,199,254,740,991'den (2^53 − 1) büyük tam sayılar hassasiyet kaybına uğrar: 9007199254740993, 9007199254740992 olur. Bu tür kimlikleri metin olarak saklayın. Bir nesnede aynı anahtar iki kez yer alırsa yalnızca son değer korunur. Tam sayıya benzeyen anahtarlar ("1", "20"), sıralama yapsanız da JavaScript tarafından her zaman diğer anahtarlardan önce yerleştirilir. Birkaç megabayta kadar girdiler sorunsuz çalışır. Yaklaşık 300.000 karakterin üzerindeki girdilerde canlı biçimlendirme duraklatılır ve yazmaya devam edebilmeniz için Biçimlendir'e basmanız gerekir.
Örnekler
API yanıtını inceleme
Bir REST API, {"user":{"id":7,"tags":["a","b"]}} gibi tek satırlık bir yanıt döndürür. 2 boşlukla biçimlendirdiğinizde her anahtar ayrı bir satıra gelir ve tags dizisi iç içe gösterilir; böylece yapıyı bir bakışta görebilirsiniz.
İki yapılandırma dosyasını karşılaştırma
İki JSON yapılandırma dosyasında aynı ayarlar farklı sırada listelenir. “Anahtarları A–Z sırala” seçeneğini açarak ikisini de biçimlendirin. Çıktılar artık aynı sırada olur ve metin karşılaştırması yalnızca gerçek farkları gösterir.
Hatalı virgülü bulma
Elle düzenlenmiş bir package.json yüklenemiyor. Dosyayı yapıştırdığınızda son bağımlılıktan sonraki virgülün yerini gösteren “Sondaki virgül” hatası 14. satır, 5. sütunda görüntülenir.
Sık sorulan sorular
Biçimlendirmeden sonra büyük bir sayı neden değişti?
Tarayıcılardaki JSON ayrıştırıcıları sayıları 64 bit kayan nokta biçiminde saklar. Bu biçimde tam sayılar yalnızca 9,007,199,254,740,991'e kadar tam olarak temsil edilir. Daha büyük tam sayılar, temsil edilebilen en yakın değere yuvarlanır. Verileriniz 64 bit kimlikler içeriyorsa bunları metin olarak gönderin.
Yorum veya sondaki virgül içeren JSON'u (JSON5, JSONC) biçimlendirebilir mi?
Hayır. Araç, JSON standardını (RFC 8259) katı biçimde uygular ve yorumları ve sondaki virgülleri konumlarıyla birlikte hata olarak bildirir; böylece bunları kaldırabilirsiniz. Çoğu programlama dilindeki JSON ayrıştırıcıları da bu şekilde çalışır.
Anahtarları sıralamak verilerimi değiştirir mi?
Hayır. Değerler değişmez; yalnızca nesnelerdeki anahtarların sırası değişir. JSON nesneleri tanım gereği sırasız olduğundan sonuç eşdeğerdir. Sıraları anlam taşıdığı için diziler hiçbir zaman yeniden sıralanmaz.
Ne kadar büyük bir dosyayı biçimlendirebilirim?
Güncel bir masaüstü tarayıcısında birkaç megabaytlık dosyalar işlenebilir. Yaklaşık 300.000 karakterin üzerindeki girdilerde araç her tuş vuruşunda yeniden biçimlendirme yapmak yerine Biçimlendir veya Küçült'e basmanızı bekler. Çok büyük çıktılar, telefonlarda metin kutusunda kaydırmayı yavaşlatabilir.
JSON'um herhangi bir yere yükleniyor mu?
Hayır. Ayrıştırma ve biçimlendirme JavaScript ile tarayıcınızda yapılır. Metin sunucuya gönderilmez veya saklanmaz.
Gizlilik
JSON'unuz yalnızca tarayıcınızda ayrıştırılır ve biçimlendirilir. Yüklenmez, kaydedilmez veya saklanmaz; analiz verilerine de dahil edilmez.