JSON dizisini tabloya dönüştürme: HTML ve Markdown adımları
En üst düzeyde boş olmayan bir JSON dizisi girip çıktı biçimini seçerek verinizi HTML veya Markdown tabloya dönüştürebilirsiniz. Biçim seçmezseniz HTML hazırlanır.
Ne zaman kullanılır?
JSON dizisini tabloya dönüştürmek, kayıtları satır ve sütun düzeninde incelemek veya aynı veriyi farklı metin biçimlerinde sunmak istediğinizde işe yarar. Bu araçta girişin en üst düzey değeri bir JSON dizisi olmalıdır. Dizi boş değilse, seçtiğiniz biçime göre tablo görünümü hazırlanır. Basit değerlerden oluşan bir dizi tek sütunlu bir tabloya yerleşir; nesnelerden oluşan dizilerde ise sütunlar, karşılaşılan anahtarların ilk görülme sırasına göre oluşturulur.
Nesnelerin yapısı aynı değilse eksik anahtarlara karşılık gelen hücreler boş bırakılır. Böylece bir kayıtta bulunmayan alanın sonucu nasıl etkilediğini görebilirsiniz. Girdi olarak tek bir nesne, bir metin, bir sayı veya dizi dışındaki başka bir JSON değeri kullanıldığında tablo çıktısı alınmaz. Boş metin ve geçersiz JSON da aynı şekilde başarılı bir tablo sonucu oluşturmaz.
Çıktı biçimi belirtmediğinizde HTML kullanılır. Markdown seçeneği, uygun bir sütun başlığı bulunduğunda başlık ve ayırıcı satırı olan bir tablo üretir. Aynı veriyi iki biçimde görmek isterseniz birleşik çıktı seçeneği hem HTML hem de Markdown gösterimi hazırlar.
Dönüştürme süreci
-
JSON verisini hazırlayın. En üst düzeyde köşeli parantezlerle çevrili bir dizi kullanın. Örneğin
[ { "ad": "Ayşe", "şehir": "İzmir" }, { "ad": "Mert" } ]ifadesinde iki nesne bulunur. İlk nesnede görülenadveşehiranahtarları sütunların temelini oluşturur. İkinci nesnedeşehiranahtarı olmadığı için ilgili hücre boş kalır. Bu yapı, tabloya çevirmek istediğiniz değerin tek başına bir nesne olmamasını da kontrol etmenizi sağlar. -
Hazırladığınız JSON metnini giriş alanına yapıştırın. Metnin boş olmadığını, tırnakların ve köşeli parantezlerin doğru kullanıldığını kontrol edin. Boş giriş, geçersiz JSON veya en üst düzeyde dizi bulunmayan bir değer tablo çıktısı yerine başarısız bir sonuç verir. Bu kontrol, biçim seçimine geçmeden önce yapılması gereken temel doğrulamadır.
-
Sonuç biçimini belirleyin. Herhangi bir seçim yapmazsanız HTML çıktısı kullanılır. Markdown seçtiğinizde, boş olmayan dizide en az bir sütun başlığı toplanabiliyorsa başlık satırı ile ayırıcı satır oluşturulur. Hücre değerinde dikey çizgi karakteri varsa bu karakter Markdown tablosunun yapısını bozmaması için kaçırılır. Birleşik çıktı seçeneği, aynı boş olmayan dizi için HTML ve Markdown temsillerini birlikte üretir.
-
Oluşan tabloyu verinizle karşılaştırın. Basit değerlerden oluşan boş olmayan bir dizi, her değerin tek sütunda bulunduğu bir görünüm verir. Nesne dizilerinde sütun sırası, anahtarların nesnelerde ilk görülme sırasını izler. Daha sonra gelen nesnelerde yeni anahtarlar görülürse bunlar toplanan sütunlara eklenir; ilgili anahtarın bulunmadığı satırlarda hücre boş görünür.
-
Biçime göre ayrıntıları inceleyin. HTML çıktısında tablo içeriğinde HTML açısından özel anlam taşıyan karakterler kaçırılır. Markdown çıktısında başlık oluşturacak bir anahtar bulunmadığında başlık ve ayırıcı satırlar üretilmez. Bu yüzden özellikle boş nesneler içeren dizilerde, görünen satırların yanında beklediğiniz tablo yapısının oluşup oluşmadığını da kontrol edin.
Çıktıyı okuma
Sonucu değerlendirirken önce girişin türüne, ardından dizinin iç yapısına bakın. Basit değer dizilerinde tek sütun beklenmesi normaldir. Nesne dizilerinde sütun adlarının sırası, önceden ayrı bir şema tanımlanmış gibi değil, anahtarların ilk karşılaşılma düzeniyle belirlenir. Bu nedenle aynı alanların farklı sırayla yazıldığı kayıtlar, sonuçta ilk görülen düzene göre yerleşir.
Eksik alanların boş hücreye dönüşmesi bir hata mesajı anlamına gelmez; ilgili nesnede o anahtarın bulunmadığını gösterir. Buna karşılık karışık dizilerde sonuç yapısını daha dikkatli okuyun. Nesne olmayan değerler yalnızca ilk sütunda tutulurken nesneler, toplanan nesne anahtarlarına göre yerleştirilir. Bu nedenle böyle bir dizi, her satırın bütün sütunları doldurduğu dikdörtgen bir tablo oluşturmayabilir.
[{}] gibi bir dizide toplanabilecek sütun anahtarı yoktur. Markdown çıktısı bu durumda başlık ve ayırıcı satır olmadan satırlar üretebilir. Boş dizi ise tablo oluşturmaz. Daha düzenli bir görünüm için nesnelerin alanlarını önceden tutarlı hâle getirebilir ve boş dizinin iş akışınızda nasıl ele alınacağını dönüştürmeden önce belirleyebilirsiniz.
Uygulamalı örnek
Bir ekip listesini, rol bilgisi eksik olan bir kaydı da koruyarak Markdown tablosunda görmek istiyorsunuz.
Bir ekip listesi olan [ { "ad": "Ayşe", "rol": "Editör" }, { "ad": "Mert" } ] verisini girin ve Markdown çıktısını seçin.
İki nesneli girişte ilk nesnede görülen anahtarlar sütun başlıklarını oluşturur; ikinci nesnede bulunmayan anahtarın hücresi boş görünür. HTML seçilirse HTML tablo, Markdown seçilirse başlık ve ayırıcı satır içeren Markdown tablo beklenir.
Sınırlamalar
- Karışık dizilerde nesne olmayan değerler yalnızca ilk sütuna yerleşir. Sütun anahtarı bulunmayan diziler Markdown başlığı ve ayırıcı satırı olmadan sonuçlanabilir; boş diziler tablo oluşturmaz.
Sık yapılan hatalar
- Neden: Metin boştur, JSON sözdizimi geçersizdir veya en üst düzey değer dizi değildir. Çözüm: Parantezleri ve tırnakları kontrol edip dönüştürülecek değeri en üst düzeyde bir dizi olarak yeniden girin.
Sık sorulan sorular
Tek bir JSON nesnesi tabloya dönüştürülebilir mi?
Koşul, JSON değerinin en üst düzeyde bir dizi olmasıdır. Tek bir nesne girildiğinde araç bunu tablo girdisi olarak kabul etmez ve tablo çıktısı oluşturmaz.
Çıktı biçimi seçmezsem ne olur?
Bir biçim seçilmemişse sonuç HTML olarak hazırlanır. Birleşik çıktı seçeneği kullanıldığında, boş olmayan dizi için HTML ile Markdown temsilleri birlikte oluşturulur.
JSON dizisindeki sütunlar nasıl belirlenir?
Dizideki öğeler nesne değilse tek sütun kullanılır. Öğeler nesne olduğunda sütunlar ilk görülen anahtarlardan toplanır ve bir kayıtta bulunmayan anahtarın karşılığı boş hücre olur.