التسلسل الاختياري في JSON
جزء من قسم Logic & Flow في رحلة JavaScript على Coddy — الدرس 24 من 65.
يتيح لك التسلسل الاختياري (?.) الوصول بأمان إلى الخصائص المتداخلة دون القلق بشأن الأخطاء إذا كانت الخاصية null أو undefined.
مثال بدون التسلسل الاختياري (Optional Chaining):
let obj = {};
console.log(obj.key1.key2);
// خطأ: لا يمكن قراءة خصائص undefinedمثال مع التسلسل الاختياري:
let obj = {};
console.log(obj.key1?.key2);
// undefined (لا يوجد خطأ)- إذا كان
key1موجوداً، فإنه يصل إلىkey2. - إذا كان
key1هوnullأوundefined، فإنه يعيدundefinedبدلاً من طرح خطأ.
أمثلة إضافية:
let user = {
profile: {
name: "Alice"
}
};
console.log(user.profile?.name);
// "Alice"console.log(user.profile?.age);
// undefined (لا يوجد خطأ)console.log(user.address?.city);
// undefined (لا يوجد خطأ)جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1السلاسل النصية بعمق
أساسيات السلاسل النصيةالتكرار عبر السلاسل النصيةTemplate Literalsدوال السلاسل النصيةمراجعة - String Weaver4JSON الجزء الثاني
التكرار عبر JSONJSON المتداخلالتسلسل الاختياري في JSONالنسخ السطحي والعميقمراجعة - متجر الدراجاتمراجعة - النظام الشمسي2المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفات ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادجمع وطرح المصفوفاتالمصفوفات المتعرجة (Jagged Arrays)المصفوفات ثلاثية الأبعاد وما بعدهاأنماط المصفوفات ثنائية الأبعاد الشائعةمراجعة - كل شيء عن المصفوفات5المجموعات - الجزء الأول
ما هي المجموعة؟التكرار عبر المجموعاتإضافة عنصرإزالة عنصرالتحقق من وجود عنصرالحجم وهل هي فارغةالنسخ والمسحملخص - أساسيات المجموعات8مواضيع شيقة حول الـ Arrays
تفكيك الـ Arrayاستخدام الـ Spread Syntax في الـ Arraysالـ Sparse Arraysمراجعة - ورشة عمل الـ Arrays3JSON الجزء الأول
ما هو JSON؟التحقق من وجود المفتاحObject MethodsSpread Operator الجزء الأولSpread Operator الجزء الثانيحذف المفاتيحمراجعة - معالجة مفاتيح JSON