İçeriğe geç

JSON Biçimlendirici ve Doğrulayıcı

JSON yapıştırın ve 2, 4 ya da 8 boşlukla düzenli biçimde yazdırın, tek satıra sıkıştırın ya da yalnızca ayrıştırılıp ayrıştırılmadığını kontrol edin. Geçerli JSON renkli olarak, önceki ve sonraki boyutla birlikte döner; geçersiz JSON ise tarayıcınızın kendi hata mesajıyla gelir. Ücretsiz, kayıt gerekmez ve yapıştırdığınız hiçbir şey tarayıcınızdan çıkmaz.

0 satır · 0 bayt

JSON Biçimlendirici Nasıl Kullanılır

  1. 1. JSON'unuzu yapıştırın. Tek bir değerden büyük bir API yanıtına kadar her şey. Kutu yazdıkça satırları ve baytları sayar.
  2. 2. Bir girinti seçin. 2, 4 ya da 8 boşluk seçin. Bu ayar yalnızca Biçimlendir'i etkiler.
  3. 3. Bir eylem seçin. Biçimlendir düzenli yazdırır, Küçült isteğe bağlı tüm boşlukları ve satır sonlarını kaldırır, Yalnızca doğrula ise sözdizimini kontrol eder ve çıktı üretmeden yeşil ya da kırmızı bir sonuç gösterir.
  4. 4. Sonucu okuyun. Geçerli JSON renkli gösterilir (anahtarlar mor, dizgiler yeşil, sayılar mavi, true ve false turuncu, null kırmızı) girdi boyutu, çıktı boyutu ve yüzde değişimle birlikte. Geçersiz JSON bunun yerine ayrıştırıcının mesajını gösterir. Çıktıyı Kopyala gördüğünüzü kopyalar.

Geçerli JSON Nedir

Araç metninizi JavaScript motorunun katı JSON ayrıştırıcısına verir; bu nedenle biçimin standardı olan RFC 8259 (ECMA-404 ile aynı dilbilgisi) neyi kabul ediyorsa onu kabul eder, fazlasını değil. Bu, bir JavaScript nesne değişmezinden daha katıdır; bu yüzden bir betikte çalışan kod burada sık sık başarısız olur. Yaygın nedenler:

JSON'un ayrıştırılamamasının yaygın nedenleri
HataÖrnekDüzeltme
Sondaki virgül{"a": 1,}Son virgülü silin.
Tek tırnak{'a': 1}Her anahtar ve dizgi için çift tırnak kullanın.
Tırnaksız anahtar{a: 1}Tırnak içine alın: {"a": 1}.
Yorum// note veya /* note */JSON'da yorum yoktur; bunları silin.
Baştaki sıfır ya da artı işareti007, +57 ve 5 yazın.
NaN, Infinity ya da undefined{"x": NaN}JSON'da bunlar yoktur; null ya da bir dizgi kullanın.
Dizgi içinde ham satır sonutırnakların içinde bir yeni satırİki karakter olarak yazın: \n.
Eksik virgül{"a": 1 "b": 2}Üyeleri virgüllerle ayırın.

Tek bir 42, "text" ya da null de geçerlidir: RFC 7159'dan beri bir JSON metni yalnızca bir nesne ya da dizi değil, herhangi bir değer olabilir. Büyük harfle yazılmış True ya da NULL geçerli değildir; üç değişmez de küçük harflidir.

Biçimlendirme Neyi Değiştirir

Bu araç JSON'unuzu ayrıştırıp geri yazar; sonuç aynı verinin yeni bir düzendeki hâlidir, metninizin karakter karakter kopyası değildir. Dört şey farklı olabilir; ilk ikisi, biçimlendirdiğiniz JSON'u başka bir sisteme besliyorsa önemlidir:

  • Büyük tamsayılar hassasiyet kaybeder. JavaScript sayıları 64 bitlik kayan noktalı sayılardır; 9.007.199.254.740.991'den (253 − 1) büyük tamsayılar yuvarlanır. 9007199254740993 değeri 9007199254740992 olarak döner. Kimlikleriniz bu kadar büyükse onları dizgi olarak tutun.
  • Yinelenen anahtarlar birleşir. RFC 8259 adların benzersiz olması gerektiğini söyler ama tekrarı yasaklamaz; bu araç son değeri tutar ve öncekileri atar.
  • Tamsayıya benzeyen anahtarlar önce gelir. JavaScript'te "1" ve "2" gibi anahtarlar, diğer anahtarlardan önce artan sırayla listelenir; bu yüzden {"b":1,"2":1,"1":1} şu şekilde geri yazılır: {"1":1,"2":1,"b":1}. Diğer anahtarlar sizin sıranızı korur.
  • Sayılar ve kaçış dizileri yeniden yazılır. 1.50 olur 1.5, 1e2 olur 100 ve \u00e9 olur é.

Çalışılmış Örnek

Büyük bir kimlik, sondaki bir sıfır, bir üs ve bir kaçış dizisi içeren 119 baytlık bu girdiye bakın:

Girdi

{"title":"APA Manual","year":2020,"tags":["style","7th"],"id":9007199254740993,"price":1.50,"x":1e2,"name":"caf\u00e9"}

2 boşluklu Biçimlendir 156 bayt yazar (%31 artış); her üye ayrı satırda, "id": 9007199254740992, "price": 1.5, "x": 100 ve "name": "café" ile. Küçült aynı değişikliklerle tek satırda 114 bayt yazar (%4 azalış). Verinin başka hiçbir yanı değişmez. Boyutlar UTF-8 bayt olarak sayılır, bu yüzden é iki sayılır.

Hangi Araca İhtiyacınız Var?

Bu sayfa JSON'un kendisi içindir. Verileriniz başka bir biçimdeyse ilgili bir araç işinizi görür: elektronik tablolar için CSV'den JSON'a, planlanan YAML'den JSON'a ve XML'den JSON'a dönüştürücüler, XML belgeleri için XML Biçimlendirici ve işaretleme için HTML Biçimlendirici.

Sık sorulan sorular

Bir JSON biçimlendirici ne yapar?
JSON'u ayrıştırır ve tutarlı girinti ve her üye için bir satırla geri yazar; böylece küçültülmüş bir API yanıtı okunabilir hâle gelir. Önce ayrıştırmak zorunda olduğundan doğrulayıcı olarak da işe yarar: geçerli JSON olmayan metin çıktı yerine bir hata üretir.
Neden JSON'um geçersiz diyor?
Genellikle yukarıdaki tablodaki hatalardan biri yüzündendir: sondaki virgül, tek tırnak, tırnaksız bir anahtar, bir yorum ya da eksik bir virgül. Mesaj tarayıcınızın kendi JSON ayrıştırıcısından gelir; bu yüzden Chrome, Firefox ve Safari arasında sözcükleri farklıdır ve bir konum verip vermeyebilir. Sorunu, mesajın adını verdiği noktada ya da hemen önünde arayın.
JSON5 ya da JSONC ile yorumlu JSON'u biçimlendirebilir miyim?
Hayır. Yorumlar, sondaki virgüller ve tek tırnaklar JSON'un parçası değildir ve bu araç katı bir ayrıştırıcı kullanır. Önce bunları kaldırın ya da dosyayı düzenleyicinizde düz JSON'a çevirin.
Biçimlendir, Küçült ve Yalnızca doğrula arasındaki fark nedir?
Biçimlendir girinti ve satır sonu ekler, Küçült en küçük metni elde etmek için isteğe bağlı tüm boşlukları kaldırır, Yalnızca doğrula ise sözdizimini kontrol eder ve çıktı olmadan bir sonuç gösterir. Üçü de aynı ayrıştırıcıyı kullanır; bu yüzden birini geçen belge hepsini geçer.
JSON'umdaki bir sayı neden değişti?
Araç sayıları JavaScript kayan noktalı sayıları olarak okur ve JavaScript'in en kısa biçiminde geri yazar. Bu, 1.50 değerini 1.5e, 1e2 değerini 100e çevirir; 253 − 1'den büyük tamsayıları yuvarlar. Tam olarak korunmaları gereken çok büyük kimlikleri dizgi olarak saklayın.
JSON'um bir yere yükleniyor mu?
Hayır. Ayrıştırma, biçimlendirme ve renklendirme tümü tarayıcınızda çalışır; yapıştırdığınız metin CitationEasy'ye ya da başka birine gönderilmez. Paylaşılan bir bilgisayarda işinizi bitirince kutuyu temizleyin.
Anahtarları sıralayabilir ya da girinti için sekme kullanabilir miyim?
Burada hayır. Girinti seçenekleri 2, 4 ya da 8 boşluktur; anahtarlar, yukarıda anlatılan tamsayıya benzeyen anahtarların önce gelmesi dışında, girdinizin verdiği sırayı korur.

İlgili araçlar

Veri, işaretleme ve kod kategorisinde daha fazlası