ماهو JSON

ماهو JSON

يعتبر اختصار ترميز جافا سكريبت المعروف ب JSON اي JavaScript Object Symation هو تبادل تنسيق بيانات الكمبيوتر خفيفة الوزن. وهو يستند إلى نص، يكون تمثيل البيانات بصيغه بسيطه ومصفوفات مترابطه قابله لقراءه الإنسان تسمى كائنات.

JSON ليست لغة برمجية إنما هي طريقة متفق عليها بين لغات البرمجة المختلفة لتمثيل البيانات بهدف سهولة تبادل البيانات بين هذه اللغات.

تنسيقات JSON غالبا ما تستخدم لنقل وتنظيم تسلسل البيانات عبر شبكات الاتصال تطبيقه الرئيسي هو في AJAX المستخدمة في رمجة تطبيقات الويب، والتي تم استخدامها كبديل لصيغة XML.

صيغة JSON تمثل عن طريق نص، والبنية لهذا النص تشبه الكائن في الجافاسكربت, وهذه الصيغة مدعومة من لغات البرمجة الأساسية الأخرى وتستخدم هذه الصيغة بشكل كبير في عملية تبادل البيانات Client-Server.

مكونات JSON

يتكون JSON من عنصرين اساسيين وهما:

  • المفتاح Key : يمثل اسم فريد لقيمة البيانات ويتم وضعه عادة بين علامات التنصيص المزدوجة او الفردية.
  • القيمة Value : تمثل البيانات ويمكن أن تمثل اكثر من نوع بيانات مثل المصفوفات والنصوص والأرقام .

الصيغ المدعومة في JSON

  • Array : المصفوفة هي عبارة عن كائن يحتوي عدد من الكائنات من نوع واحد تخزنها في الذاكرة ، وتستطيع تشبيهها بمتغير بأكثر من قيمة.
  • Number : تكون القيمة عبارة عدد صحيحا أو حقيقيا أو فواصل عشرية.
  • Boolean : قيمة منطقية ولها احتمالان True او False.
  • String : مكونة من سلسلة من الأحرف.
  • Object : مجموعة مترابطة من أزواج من المفاتيح / القيم Key / Value.

مثال على الفرق بين JSON و XML

المثال التالي يوضح تمثيل جسون لكائن (Object) يصف شخصم ما.

{
  "firstName": "John",
  "lastName": "Smith",
  "address": {
    "streetAddress": "21 2nd Street",
    "city": "New York",
    "state": "NY",
    "postalCode": "10021"
  },
  "phoneNumbers": [
    { "type": "home", "number": "212 555-1234" },
    { "type": "fax", "number": "646 555-4567" }
  ]
}

نفس المتال السابق باستخدام XML

<Person firstName="John" lastName="Smith">
 <address>
    <streetAddress>21 2nd Street</streetAddress>
    <city>New York</city>
    <state>NY</state>
    <postalCode>10021</postalCode>
  </address>
  <phoneNumber type="home">212 555-1234</phoneNumber>
  <phoneNumber type="fax">646 555-4567</phoneNumber>
</Person>
hamza aziz

اسمي حمزة من المملكة المغربية مؤسس مجتمع لارافيل العربي, تقني متخصص في الشبكات، الامن المعلومياتي و برمجة المواقع الكترونية، حاصل على البكلريوس في الاقتصاد و التسيير. هدفي المساهمة في انشاء محتوى عربي مفيد ان شاء الله.

إقرأ أيضً