أدوات JSON العملية: المقارنة والتحويل إلى CSV والتحقق والأمان
الدرس الأخير في دورة JSON: مقارنة ملفين لمعرفة الفروق، وتحويل JSON إلى CSV لفتحه في Excel، ومسارات JSONPath، والتحقق بـ JSON Schema، وأخطاء الأمان وحجم الملفات.
محتويات الدرس
مقارنة ملفين
عندما تتغير استجابة API أو ملف إعدادات، افتح تبويب المقارنة في محرر JSON والصق النسختين:
{ "version": "1.4", "debug": false, "langs": ["ar", "en"] }{ "version": "1.5", "debug": false, "langs": ["ar", "en", "fr"], "cache": true }ستظهر الفروق بالمسار: قيمة تغيرت ~، وعنصر أضيف +، وآخر حُذف -.
من JSON إلى CSV وExcel
المصفوفة التي عناصرها كائنات متشابهة تتحول إلى جدول: كل كائن صف، وكل مفتاح عمود. تبويب CSV في المحرر يسطّح الكائنات المتداخلة بأسماء مثل address.city، ثم تفتح الملف في Excel. تعلّم ما تفعله بعدها في دورة Excel.
المسارات JSONPath
المسار يحدد مكان قيمة داخل الملف:
$.users[0].address.cityيعني: من الجذر $، المصفوفة users، العنصر الأول، ثم address، ثم city. في تبويب الشجرة، اضغط أي مفتاح لنسخ مساره.
JSON Schema: عقد للبيانات
Schema ملف JSON يصف الشكل المطلوب، فترفض البيانات الخاطئة تلقائيًا:
{
"type": "object",
"required": ["email", "age"],
"properties": {
"email": { "type": "string", "format": "email" },
"age": { "type": "integer", "minimum": 13 }
}
}تدعمه مكتبات في كل اللغات، وتستخدمه محررات مثل VS Code لإكمال ملفات الإعدادات تلقائيًا.
الأمان والأداء
- لا تستخدم
evalلقراءة JSON أبدًا؛ استخدمJSON.parse. - لا تضع كلمات المرور ومفاتيح API في ملفات JSON داخل المستودع.
- الملفات الضخمة: احذف المسافات (تصغير) عند الإرسال، واستخدم التنسيق للقراءة فقط.
- الأرقام الكبيرة جدًا، مثل المعرفات الطويلة، قد تفقد دقتها في JavaScript، فأرسلها نصوصًا.
التمرين الختامي
- قارن نسختين من ملف إعدادات وسجّل كل الفروق.
- حوّل مصفوفة 5 منتجات إلى CSV وافتحها في Excel.
- اكتب Schema لكائن «طالب» فيه الاسم والبريد والعمر، ثم أجب عن اختبار الدورة.