البرمجة

فنون تعامل جافاسكربت مع JSON: التحويل، الفلاتر، والتواريخ

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

JSON يُستخدم لتبادل البيانات بين الخوادم والعملاء ولتخزين تلك البيانات بشكل منظم. يتكون JSON من أزواج المفتاح والقيمة، حيث يُمكن تضمين كائن آخر كقيمة، مما يسمح بإنشاء هياكل بيانات معقدة.

على سبيل المثال:

json
{ "اسم": "جون", "العمر": 30, "مدينة": "نيويورك", "مهنة": "مطور الويب", "مهارات": ["جافاسكربت", "HTML", "CSS"] }

للتعامل مع JSON في جافاسكربت، هناك توابع مدمجة تُسهل عمليات التحويل والوصول إلى البيانات. على سبيل المثال، يُمكن استخدام JSON.stringify() لتحويل كائن جافاسكربت إلى سلسلة JSON، وJSON.parse() لتحويل سلسلة JSON إلى كائن جافاسكربت.

javascript
// تحويل كائن جافاسكربت إلى سلسلة JSON var person = { name: "جون", age: 30, city: "نيويورك", job: "مطور الويب", skills: ["جافاسكربت", "HTML", "CSS"] }; var jsonString = JSON.stringify(person); console.log(jsonString); // تحويل سلسلة JSON إلى كائن جافاسكربت var jsonText = '{"اسم": "جون", "العمر": 30, "مدينة": "نيويورك", "مهنة": "مطور الويب", "مهارات": ["جافاسكربت", "HTML", "CSS"]}'; var parsedObject = JSON.parse(jsonText); console.log(parsedObject);

هذه التوابع تساعد في تسهيل التفاعل مع البيانات المرسلة أو المستلمة كسلاسل JSON، وتُسهم في تحقيق تجربة تطوير فعالة ومستدامة.

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

المزيد من المعلومات

بالطبع، سنستكمل رحلتنا في عالم JSON وتوابع جافاسكربت المرتبطة بها. فيما يلي توسيع للمعلومات حول كيفية التعامل مع JSON في جافاسكربت:

  1. التعامل مع كائنات JSON متداخلة:
    يُمكن لبيانات JSON أن تكون متداخلة، حيث يمكن أن يكون لقيم المفاتيح قيم من نوع كائن آخر. يُستخدم الاستدعاء المتداخل للتلاعب بالبيانات بهذا النوع.

    javascript
    var nestedJSON = { "person": { "name": "جون", "age": 30, "address": { "city": "نيويورك", "zipCode": "10001" } } }; console.log(nestedJSON.person.name); // جون console.log(nestedJSON.person.address.city); // نيويورك
  2. التحكم في التحويل:
    JSON.stringify() تأخذ وسيطة ثانية وظيفة للتحكم في التحويل. يُمكن تمرير مصفوفة من السلاسل أو وظيفة تحويل لتعديل سلوك التحويل.

    javascript
    var person = { name: "جون", age: 30, skills: ["جافاسكربت", "HTML", "CSS"] }; function replacer(key, value) { if (key === "age") { return undefined; // يخفي العمر } return value; } var jsonString = JSON.stringify(person, replacer); console.log(jsonString);
  3. التحقق من صحة الJSON:
    يمكن استخدام JSON.parse() مع وظيفة فلترة للتحقق من صحة البيانات المحللة.

    javascript
    var invalidJSON = '{"name": "جون", "age": 30, "city": "نيويورك",}'; try { var parsedObject = JSON.parse(invalidJSON); console.log(parsedObject); } catch (error) { console.error("JSON غير صحيح:", error.message); }
  4. التعامل مع التواريخ:
    JSON لا يدعم تخزين التواريخ بشكل مباشر، لكن يُمكن استخدام وظائف مخصصة أثناء التحويل للتعامل مع التواريخ.

    javascript
    var person = { name: "جون", birthdate: new Date(1990, 5, 15) }; function dateReviver(key, value) { if (key === "birthdate") { return new Date(value); } return value; } var jsonString = '{"name": "جون", "birthdate": "1990-06-15T00:00:00.000Z"}'; var parsedObject = JSON.parse(jsonString, dateReviver); console.log(parsedObject.birthdate.toLocaleDateString()); // تحويل التاريخ إلى سلسلة نصية

بهذه الطريقة، يُمكن للمطورين الاستفادة القصوى من قدرات JSON في جافاسكربت لتبادل البيانات بشكل فعال وللتلاعب بتلك البيانات بشكل مرن. يشكل فهم تلك الجوانب المتقدمة للتعامل مع JSON جزءًا أساسيًا من مهارات مطوري الويب.

مقالات ذات صلة

زر الذهاب إلى الأعلى

هذا المحتوى محمي من النسخ لمشاركته يرجى استعمال أزرار المشاركة السريعة أو تسخ الرابط !!