İçeriğe geç

JSON Araçları

JSON'u biçimlendirin, küçültün, onarın ve tam hata konumlarıyla doğrulayın; ağaç görünümünde gezin ve JSON, CSV ile YAML arasında dönüştürün.

Tarayıcınızda çalışır. Hiçbir şey yüklenmez.

Biçimlendirme tarayıcınızda çalışır. Girdi asla yüklenmez veya URL'ye eklenmez. Ctrl+Enter biçimlendirir. Buraya bir dosya da bırakabilir veya bir dosya açabilirsiniz; tarayıcıda okunur.

Bu araç hakkında

JSON Araçları girdinizi tarayıcının katı JSON ayrıştırıcısıyla (RFC 8259) ayrıştırır, düzgün biçimlendirir veya küçültür ve ilk sözdizimi hatasının tam satır ve sütununu gösterir. Onarma modu, bir JavaScript dosyasının kabul ettiği sözdizimini - yorumlar, sondaki virgüller, tek veya tipografik tırnaklar, tırnaksız anahtarlar, NaN ve undefined - düzeltir ve yaptığı her değişikliği listeler. Sonuç, kopyalanabilir yollar içeren katlanabilir bir ağaç olarak gezilebilir. CSV'yi de JSON'a dönüştürür. Hiçbir şey yüklenmez.

Her mod tamamen tarayıcınızda çalışır: yapıştırdığınız JSON veya CSV, sayfanın kendisi tarafından ayrıştırılır, biçimlendirilir, sıralanır, onarılır ya da dönüştürülür; XGM API'sine hiçbir zaman gönderilmez ve URL'ye hiçbir zaman yazılmaz, bu yüzden paylaştığınız bağlantı yalnızca aracı ve modu taşır. Biçimlendirme modunda açtığınız ya da sürükleyip bıraktığınız dosya, tarayıcının kendisi tarafından (FileReader) okunur ve makinenizde kalır. CSV ayrıştırıcısı ile CSV yazıcısı RFC 4180'i izler; bu yüzden tırnak içindeki alanlar virgül, tırnak ve satır sonu içerebilir. Hiçbir şey saklanmaz: sayfayı yeniden yüklemek girdiyi temizler. Bu sayfanın kendiliğinden yaptığı tek istek, analitiği kabul ettikten sonra gönderilen sayfa görüntüleme olayıdır; bu olay yolu ve araç adını kaydeder, girdinizi asla kaydetmez.

Onarım sözdizimini değiştirir, veriyi asla. Yorumları ve sondaki virgülleri kaldırır, tek tırnaklı ve tipografik tırnaklı dizgileri yeniden tırnaklar, tırnaksız nesne anahtarlarını tırnak içine alır ve NaN, Infinity ve undefined değerlerini null'a çevirir; bu düzenlemelerin her birini satır ve sütun bilgisiyle listeler. Bir dizginin içindeki karakterler olduğu gibi kopyalanır; bu yüzden bir dizginin içine denk gelen bir virgül ya da bir // olduğu gibi bırakılır. Düzeltemediği her şey tahmin edilmek yerine konumu ve nedeniyle bildirilir; bu durumda hiçbir şey değiştirilmez.

Boyut rehberi: yaklaşık 5.00 MB boyutuna kadar olan belgeler güncel bir dizüstü bilgisayarda bir saniyenin çok altında biçimlendirilir. Daha büyükleri de çalışır, ancak sonucun tamamı sekmede işlendiği için sayfa yavaşlar ve dosya seçici 25.00 MB üzerindeki hiçbir dosyayı kabul etmez. Ağaç bir seferde en fazla 500 satır ve dal başına 200 alt öğe gösterir, böylece uzun bir yanıt sekmeyi kilitleyemez.

Nasıl kullanılır

  1. JSON'u girdi alanına yapıştırın veya örneği yükleyin.
  2. Girintiyi ve anahtarların sıralanıp sıralanmayacağını seçin.
  3. Düzgün biçimlendirmek için Biçimlendir'e (veya Ctrl+Enter), boşlukları kaldırmak için Küçült'e basın.
  4. Belge ayrıştırılamıyorsa Onar'a basın: tanıdığı sözdizimini düzeltir ve her değişikliği satır ve sütunuyla listeler.
  5. Kalan hataları bildirilen satır ve sütunda düzeltin, ardından ağacı gezin, bir yol kopyalayın ya da sonucu dışa aktarın.

SSS

JSON'um bir sunucuya gönderiliyor mu?

Hayır. Ayrıştırma ve biçimlendirme tarayıcınızda çalışır ve girdi sayfa URL'sine eklenmez.

JavaScript kabul ederken JSON'um neden geçersiz?

JSON, JavaScript'ten daha katıdır: anahtarlar ve metinler çift tırnak ister; yorumlar, sondaki virgüller, tek tırnaklar, NaN ve undefined kullanılamaz.

Onarma neyi değiştirir, verilerimi bozabilir mi?

Yalnızca sözdizimini değiştirir: yorumları ve sondaki virgülleri kaldırır, tek tırnaklı ve tipografik tırnaklı dizgileri yeniden tırnaklar, tırnaksız nesne anahtarlarını tırnak içine alır ve NaN, Infinity ile undefined değerlerini null'a çevirir. Bir dizginin tırnakları arasındaki her şey dokunulmadan aktarılır; bu yüzden dizge içindeki bir virgül ya da bir // olduğu gibi bırakılır. Her düzenleme; satırı, sütunu, eski metni ve yeni metniyle listelenir. Düzeltemediği her şey bir konum ve gerekçeyle bildirilir; bu durumda hiçbir şey değiştirilmez.

Anahtarları sırala ne yapar?

Nesne anahtarlarını her düzeyde alfabetik sıralar; bu da iki JSON belgesini karşılaştırmayı kolaylaştırır. Dizi sırası asla değiştirilmez.

Girdi ne kadar büyük olabilir?

Modern tarayıcılarda birkaç megabayt sorunsuz çalışır. Çok büyük belgeler, sonucun tamamı çizildiği için sayfayı yavaşlatabilir.

Uzun kimlik numaram biçimlendirmeden sonra neden değişti?

Biçimlendirici JSON.parse ile ayrıştırır; bu da her sayıyı bir IEEE 754 double değerine çevirir, yani 9,007,199,254,740,991 (2^53 - 1) üzerindeki bir tam sayı, daha hiçbir şey yazdırılmadan yuvarlanmıştır. RFC 8259 bölüm 6 tam da bu konuda uyarır: uygulamalar sayılarda yalnızca double duyarlığı içinde uzlaşır. Twitter tarzı snowflake kimliklerini, 64 bitlik veritabanı anahtarlarını ve benzer değerleri, gidiş-dönüşten sağ çıkmaları gerekiyorsa dize olarak taşıyın.

Tam JSON Araçları rehberini okuyun