json logo

مقدمة في جاسون JSON


العربية Български 中文 Č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.

JSON (جاسون) طريقة ترقيم عناصر جافاسكريبت : هي صيغة سلسة لنقل البيانات - سهلة للأشخاص قراءتها واستيعابها ، وسهلة للأجهزة والحواسيب تحليلها وتوليدها ، هي جزء من لغة جافا سكريبت “الإصدار الثالث من نظام إيكما 262 ، ديسمبر 1999 ". جاسون هي صيغة بيانات مستقلة تماما عن اللغة المتسخدمة أو الإطار المتبع فيه ، يمكن لكثير من المبرمجين لعائلة لغات السي C والتي تشمل C++ ، C# ، جافا ، جافا سكريبت ، بيرل ، بايثون ، والعديد من اللغات استخدامها ، تلك المميزات تجعل من جاسون الأفضل في نقل البيانات (data) من لغة لأخرى.

بنيت جاسون باستخدام نظريتين على أن تكون :

تلك المواصفات تجعل التركيب مكافئة لنقل البيانات ، كل لغات البرمجة الحديثة تقريبا تدعم هذه التراكيب بشكل من الأشكال ، ولذلك تجعل من جاسون الأفضل في نقل البيانات من لغة لأخرى.

في جاسون، التراكيب تأتي بالأشكال الأتية :

عنصر (object) : كمجموعة غير مرتبة من أزواج الأسماء والقيم ، العنصر يبدأ ب } (اليسرى) و تنتهي ب { (اليمنى) . كل اسم منفصل : (كولون) وأزواج القيم والأسماء منفصلة ب , ( فاصلة )

سلاسل (Array) ، هي مجموعة مرتبة من السلاسل، الأراي تبدأ ب [ (براكت اليسرى) وتنتهي ب ] (براكت اليمنى) ، القيم منفصلة بفاصلة , ( فاصلة)

يمكن للقيم أن تكون مجموعة من الأحرف (String) منفصلة بعلامة ترقيم " أو رقم ، أو true أو false أو null ، أو سلسلة أو عنصر.
وأيضا ممكن جعل التراكيب أكثر تعقيدا بحيث تستخدم كل هذه التراكيب معا .

ممكن لمجموعة الأحرف (String) أن تكون من أي أحرف اليونيكود مفصولة باقتباسات باستخدام علامة الشرطة "\" ، هذه الأحرف ممن أن تمثل سلسلة من الأحرف المعروف بسترنغ ، مجموعة الأحرف أو السترنغ شبيه جدا لتلك المتسخدمة في C أو جافا.

أي رقم بأتي بشكل قريب جدا لتلك في لغة C أو جافا ، عدا أنها أرقام الثمانية أو الستة عشرية غير مستخدمة .

المساحات الخالية ممكن ادخالها بين كل قطعة ، المحلل يتوقع بعض المعلومات المتعلقة بالشكل التي تشرح اللغة .

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