133- دروس جافا سكربت – JSON Intro

## مقدمة إلى JSON في لغة JavaScript

تعتبر JSON (JavaScript Object Notation) واحدة من أكثر الصيغ شيوعًا المستخدمة لتبادل البيانات بين الخوادم والعملاء عبر الإنترنت. تتميز JSON بكونها بسيطة وسهلة القراءة والكتابة لكل من البشر والآلات، مما يجعلها خيارًا مثاليًا لتبادل البيانات في تطبيقات الويب الحديثة.

### ما هي JSON؟

JSON هي صيغة خفيفة لتبادل البيانات، وهي مشتقة من بناء الجملة الخاص بلغة JavaScript للأشياء. تتألف JSON من أزواج مفتاح-قيمة، مما يجعلها مماثلة للأشياء في JavaScript. يمكن أن تحتوي قيم JSON على عدة أنواع من البيانات مثل: نصوص، أرقام، أشياء، مصفوفات، قيم منطقية، وقيم null.

### الفروقات بين JSON و JavaScript Object

على الرغم من أن JSON مستوحاة من بناء الجملة الخاص بالأشياء في JavaScript، إلا أن هناك بعض الفروقات البسيطة:

1. [شركة برمجة مصرية] **الاقتباسات**: في JSON، يجب دائمًا أن تكون المفاتيح والنصوص محاطة بعلامات اقتباس مزدوجة (`”`). بينما في JavaScript، يمكن استخدام علامات الاقتباس المفردة أو المزدوجة للنصوص، ولا تحتاج المفاتيح إلى علامات اقتباس إذا كانت معرفات صالحة.

2. **التعليقات**: JSON لا تدعم التعليقات، بينما JavaScript تدعمها.

### كيفية استخدام JSON في JavaScript

#### تحويل كائن JavaScript إلى JSON

يمكنك تحويل كائن JavaScript إلى سلسلة JSON باستخدام الدالة `JSON.stringify()`. إليك مثالًا:

const user = {
  name: "Ali",
  age: 30,
  city: "Riyadh"
};

const jsonString = JSON.stringify(user);
console.log(jsonString); // {"name":"Ali","age":30,"city":"Riyadh"}

#### تحويل JSON إلى كائن JavaScript

لتحويل سلسلة JSON إلى كائن JavaScript، استخدم الدالة `JSON.parse()`. إليك مثالًا:

const jsonString = '{"name":"Ali","age":30,"city":"Riyadh"}';
const user = JSON.parse(jsonString);

console.log(user.name); // Ali
console.log(user.age);  // 30
console.log(user.city); // Riyadh

### استخدام JSON مع المصفوفات

تدعم JSON أيضًا المصفوفات، مما يسمح بتبادل مجموعات من البيانات. إليك مثالًا يوضح كيفية التعامل مع المصفوفات:

const users = [
  { "name": "Ali", "age": 30 },
  { "name": "Sara", "age": 25 },
  { "name": "Hassan", "age": 35 }
];

const jsonArray = JSON.stringify(users);
console.log(jsonArray);
// [{"name":"Ali","age":30},{"name":"Sara","age":25},{"name":"Hassan","age":35}]

const parsedArray = JSON.parse(jsonArray);
console.log(parsedArray[0].name); // Ali

### خصائص JSON

1. **سهولة القراءة والكتابة**: بفضل بنيتها البسيطة، يمكن قراءة وكتابة JSON بسهولة من قبل المبرمجين.
2. **التوافق**: JSON متوافقة مع معظم لغات البرمجة، مما يجعلها مثالية لتبادل البيانات بين [شركة برمجة مصرية] الأنظمة المختلفة.
3. **الدعم الأصلي في JavaScript**: JSON مدمجة في JavaScript، مما يسهل التعامل معها دون الحاجة إلى مكتبات إضافية.

### الخاتمة

JSON هي أداة قوية ومرنة لتبادل البيانات في تطبيقات الويب. بفضل بساطتها وقابلية التوسع، أصبحت JSON الخيار المفضل للعديد من المطورين. من خلال فهم كيفية تحويل الكائنات إلى JSON والعكس، يمكنك تحسين تفاعلات بياناتك بكفاءة وفعالية.