🍋
Menu
Web

JSON

JSON (JavaScript Object Notation)

Veri nesnelerini, dizileri, sayıları, dizeleri, boolean'ları ve null değerlerini temsil etmek için insan tarafından okunabilir metin kullanan, web sunucuları ve tarayıcılar arasındaki iletişimde yaygın olarak kullanılan hafif veri değişim biçimi.

Teknik Detay

JSON spesifikasyonu (RFC 8259/ECMA-404): 6 tür — nesne ({"key":değer}), dizi ([değerler]), dize (çift tırnaklı, \uXXXX kaçışlı Unicode), sayı (tam veya kayan noktalı, NaN/Infinity yok), boolean (true/false), null. Yorum, sondaki virgül veya tek tırnak yoktur. Kodlama UTF-8'dir (BOM'suz). Ayrıştırma: JSON.parse() (yerel tarayıcı performansı), büyük veriler için akış ayrıştırıcılar (JSONStream, ijson). Uzantılar: JSON5 (yorumlar, sondaki virgül, tırnaksız anahtarlar), JSONC (JSON with Comments — VS Code), JSON-LD (bağlı veri), NDJSON/JSON Lines (akış için satır başına bir JSON nesnesi). Güvenlik: tarihsel olarak ayrıştırma için kullanılan eval() — kod enjeksiyon güvenlik açığı; her zaman JSON.parse() kullanın. Alternatifler: MessagePack (ikili, daha küçük), CBOR (ikili, daha fazla tür), Protocol Buffers (şema tabanlı, sıkıştırılmış), YAML (daha fazla özellikli üst küme).

Ornek

```javascript
// JSON parse with reviver function
const data = JSON.parse(text, (key, val) => {
  if (key === 'date') return new Date(val);
  return val;
});

// JSON stringify with replacer and indentation
JSON.stringify(data, ['name', 'email'], 2);
```

Ilgili Formatlar

Ilgili Araclar

Ilgili Terimler