json logo

JSON'a Giriş


العربية Български 中文 Český Dansk Nederlands English Esperanto Français Deutsch Ελληνικά עברית Magyar Indonesia Italiano 日本
한국어 فارسی Norsk Polski Português Română Русский Српско-хрватски Slovenščina Español Svenska Türkçe Українська Tiếng Việt

ECMA-404 The JSON Data Interchange Standard.

Düzeltildi Türkçe

JSON (JavaScript Object Notation) hafif bir veri değişim formatwdwr. Insanlarwn okuyup yazabilmesi kolaydwr. Makinalarwn taraywp, yaratabilmesi kolaydwr. JavaScript Programlama Dili, Standard ECMA-262 3.Yaywn - Aralwk 1999, versiyonunun alt kümesi üzerine kurulmuştur. JSON, tamamen programlama dillerinden bağwmswz, ancak C türevi dillere (C, C++, C#, Java, JavaScript, Perl, Python ve daha pek çoğu), yazwlwş bakwmwndan çok benzeyen bir veri tanwmlama formatwdwr. Bu özellikler, JSON'u veri değiştokuşu için ideal hale getirmektedir.

JSON iki yapw üzerine kurulmuştur:

Bu yapwlar, evrensel veri yapwlarwdwr. Bütün modern programlama dilleri, bu yapwlarw, bir şekilde içlerinde barwndwrmaktadwrlar. Programla dilleri araswnda veri değişimi için kullanwlan bir formatwn, bu yapwlarw kullanarak oluşturulmasw da oldukça anlamlwdwr.

Bu yapwlar JSON'da, aşağdaki şekillerde gösterilirler:

Bir nesne (object), isim/değer çiftlerinin swraswz birleşiminden oluşur. Nesne tanwmlamasw, {kwvwrcwk parantez aç ile başlar ve }kwvwrcwk parantez kapa ile biter. Her "isim"den sonra :iki nokta üstüste gelir ve isim/değer çiftleri ,virgül ile ayrwlwr.

Diziler, swralw değer listesidir. Bir dizi [köşeli parantez aç ile başlar ve ]köşeli parantez kapa ile biter. Değerler ,virgül ile ayrwlwr.

Bir değer, çift twrnak içinde bir string (yazw), sayw, true (doğru), false (yanlwş), null (boş değer), object (nesne) veya array (dizi) olabilir. Bu yapwlar bir birlerinin içinde tekrar edebilirler.

Bir string (yazw), çift twrnak içinde, ters-bölü kodlarwna da izin veren, swfwr veya daha fazla "Unicode" karakterin birleşiminden oluşur. Bir karakter, string (yazw) tipindeki tek karakter olarak gösterilebilir. String (yazw) tipi, C veya Java dilindeki "string" tipine çok benzemektedir.

Bir sayw C veya Java dilindeki saywlara çok benzer, ancak sekizli (octal) ve onaltwlw (hexadecimal) rakamlar kullanwlmamaktadwr.

Tanwmlamalarwn araswna, istendiği gibi beyaz boşluk (Whitespace) konulabilir. Verinin diline (Encoding) bağlw olarak, notasyonda bazw farklwlwklar olabilir.

json element

value object array string number "true" "false" "null"

object '{' ws '}' '{' members '}'

members member member ',' members

member ws string ws ':' element

array '[' ws ']' '[' elements ']'

elements element element ',' elements

element ws value ws

string '"' characters '"'

characters "" character characters

character '0020' . '10FFFF' - '"' - '\' '\' escape

escape '"' '\' '/' 'b' 'f' 'n' 'r' 't' 'u' hex hex hex hex

hex digit 'A' . 'F' 'a' . 'f'

number integer fraction exponent

integer digit onenine digits '-' digit '-' onenine digits

digits digit digit digits

digit '0' onenine

onenine '1' . '9'

fraction "" '.' digits

exponent "" 'E' sign digits 'e' sign digits

sign "" '+' '-'

ws "" '0020' ws '000A' ws '000D' ws '0009' ws