JSON (JavaScript Object Notation) — insanların okuması ve yazması, makinelerin ise ayrıştırması ve üretmesi kolay, hafif bir veri değişim formatıdır. JavaScript programlama dilinin bir alt kümesine dayanır, ancak herhangi bir dilden tamamen bağımsızdır. JSON, sunucu ve web uygulaması, mobil uygulamalar arasında veri alışverişi için ve ayrıca veri depolama için yaygın olarak kullanılır.
JSON, iki ana yapı üzerine kurulmuştur:
"İsim/Değer" Çiftleri Kümesi: Birçok dilde bu, bir nesne, kayıt, yapı, sözlük, hash tablosu, anahtarlı erişim listesi veya ilişkisel dizi olarak uygulanır. JSON'da bu, kıvrık parantezlerle {}
belirtilen bir nesne olarak temsil edilir.
{
"name": "Ivan",
"age": 30,
"city": "Kyiv"
}
Sıralı Değer Listesi: Çoğu dilde bu, bir dizi, vektör, liste veya sıralama olarak uygulanır. JSON'da bu, köşeli parantezlerle []
belirtilen bir dizi olarak temsil edilir.
[
"apple",
"banana",
"orange"
]
Değerler dizeler (string), sayılar (number), nesneler (object), diziler (array), boolean değerler (true/false) veya null olabilir.
JSON, modern web geliştirmenin ayrılmaz bir parçasıdır. İşte tipik kullanım senaryolarından birkaçı:
Parametre | XML | JSON |
---|---|---|
Format | Etiketli Metin | Anahtar ve Değerli Metin |
Okunabilirlik | Karmaşık Yapılar İçin Daha Yüksek | Basit Veriler İçin Daha İyi |
Dosya Boyutu | Genellikle Daha Büyük | Daha Küçük |
Uyumluluk | Geniş Destek | Özellikle JavaScript'te |
XML, özelliklere sahip karmaşık yapılar için daha uygunken, JSON — hafif REST API'leri içindir.
Bazen, Microsoft Excel gibi tablo formatındaki verileri JSON'a dönüştürme ihtiyacı ortaya çıkar. Bu, verileri JSON ile çalışan web servislerine veya veritabanlarına aktarmak için faydalı olabilir. Excel'in doğrudan JSON'a dışa aktarma için yerleşik bir fonksiyonu olmasa da, üçüncü taraf çözümler mevcuttur.
Böyle yararlı araçlardan biri, Excel'in kullanıcı tanımlı fonksiyonu TABLETOJSON(). Bu fonksiyon, Excel tablosundaki verileri kolayca JSON dizisine dönüştürmeyi sağlar.