JSON
JavaScript Object Notation
- Okunuşu
- ceysın
Kısaca
JSON, yapılandırılmış veriyi anahtar-değer çiftleri ve listelerle saklayıp aktarmaya yarayan, insanın da makinenin de okuyabildiği hafif bir metin biçimidir.
JSON nedir?
JSON, yapılandırılmış veriyi düz metin olarak yazmanın basit bir yoludur. Anahtar-değer çiftlerinden oluşan nesneler için süslü parantez, dizi (array) adı verilen sıralı listeler için köşeli parantez ve küçük bir değer tipi kümesi kullanır: metinler (string), sayılar, boolean değerler (true veya false), null, nesneler ve diziler.
Söz dizimi JavaScript'ten gelse de JSON dilden bağımsızdır ve neredeyse her programlama dili onu okuyup yazabilir. Veriyi JSON metnine dönüştürmeye serileştirme (serialization), JSON metnini yeniden veri yapılarına çevirmeye ayrıştırma (parsing) denir; JavaScript'te bunlar JSON.stringify() ve JSON.parse() ile yapılır.
JSON, çoğu web API'sinin varsayılan veri biçimidir; ayrıca package.json gibi yapılandırma dosyalarında, log kayıtlarında ve NoSQL veritabanlarında doküman saklamak için de kullanılır. Popülerliği, kompakt olmasından, insanlar tarafından kolay okunmasından ve makineler tarafından kolay işlenmesinden gelir.
JSON sıklıkla JavaScript nesneleriyle karıştırılır, ancak daha katıdır: anahtarlar çift tırnak içinde olmalıdır, metinlerde tek tırnak kullanılamaz; yorumlara, sondaki virgüllere, fonksiyonlara ve undefined değerine izin verilmez. XML ile karşılaştırıldığında JSON daha kısadır ve koddaki nesne ve dizilerle daha doğrudan eşleşir.
Bir bakışta
Önemli noktalar
- JSON, JavaScript Object Notation'ın kısaltmasıdır ancak neredeyse her dille çalışır.
- Veri; nesneler (
{}), diziler ([]), metinler, sayılar, boolean değerler venullolarak yazılır. - Anahtarlar ve metinler çift tırnak kullanmalıdır.
- Standart JSON yorumlara ve sondaki virgüllere izin vermez.
- Web API'leri için en yaygın veri biçimidir.
Örnek
{
"id": 42,
"name": "Ada Lovelace",
"email": "ada@example.com",
"isAdmin": false,
"roles": ["editor", "author"],
"address": {
"city": "London",
"country": "UK"
},
"lastLogin": null
}Sık sorulan sorular
JSON ile JavaScript nesnesi arasındaki fark nedir?
JavaScript nesnesi, çalışan bir programdaki bir değerdir; JSON ise veriyi temsil etmek için kullanılan bir metin biçimidir. JSON ayrıca daha katıdır: anahtarlar çift tırnak ister; fonksiyonlara, yorumlara ve undefined değerine izin verilmez.
JSON'da yorum olabilir mi?
Hayır. Standart JSON yorumları desteklemez; ancak bazı araçlar yapılandırma dosyaları için JSONC veya JSON5 gibi varyantları kabul eder.
JSON ile XML arasındaki fark nedir?
İkisi de yapılandırılmış veri için metin biçimleridir. JSON daha kısadır ve koddaki nesne ve dizilerle doğrudan eşleşir; XML ise açılış ve kapanış etiketleri kullanır ve eski kurumsal sistemlerde ve doküman biçimlerinde daha yaygındır.
Sık karşılaştırılanlar
İlgili sayfalar
- APIBackend ve API'ler, s. 2API, bir yazılımın başka bir yazılımdan veri ya da işlem talep etmesini sağlayan, belgelenmiş ve öngörülebilir kurallar bütünüdür.
- REST APIBackend ve API'ler, s. 38REST API, verileri URL'lerle tanımlanan kaynaklar olarak sunan ve istemcilerin onları standart HTTP metotlarıyla okuyup değiştirmesini sağlayan web API'sidir.
- JavaScriptWeb Geliştirme, s. 25JavaScript, web tarayıcılarında sayfaları etkileşimli hale getiren ve Node.js gibi çalışma ortamlarıyla sunucularda da çalışan programlama dilidir.
- NoSQLVeritabanları, s. 21NoSQL, veriyi ilişkisel tablolar yerine doküman, anahtar-değer çifti, geniş sütun ya da çizge gibi başka modellerde saklayan veritabanı ailesidir.
- HTTPWeb Geliştirme, s. 20HTTP, tarayıcıların, uygulamaların ve sunucuların basit bir istek-yanıt döngüsüyle web sayfaları ve veri alışverişi yapmasını sağlayan protokoldür.
- XMLBackend ve API'ler, s. 48XML (Extensible Markup Language), kendi tanımladığınız iç içe etiketlerle yapılandırılmış veriyi tutan, insanın ve makinenin okuyabildiği metin biçimidir.
Kaynaklar
Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin