ما معنى علامة الاستفهام الأولي في هذا الكود هل هي if؟
ما معنى علامة الاستفهام الأولي في هذا الكود؟
تسمى هذه الطريقة بـ (null safe Optional Chaining) وتستخدم للتأكد من قيمة متغيّر إن كانت لا تساوي null أو undefined.
في المثال المرفق، يتم اختبار قيمة المتغيّر image قبل تنفيذ التابع map على المصفوفة، وذلك لتجنّب الأخطاء التي قد تحدث في حال كانت فيمة المتغيّر غير معرّفة.
وهي نفس الطريقة التي يتم استخدام الشرط if لاختبارها أحياناً:
if(image != null) أو if(image.length) // في حالة المصفوفات وفي إطار العمل React: { image && image.map( ...
إن كنت تقصد علامة الاستفهام الموجودة بعد المتغير image أي المعامل ".?" فهي مايسمى بالـ Optional chaining وهي بالفعل شرط كما قلت وهي تفحص المتغييرات في السلسلة إن كانت null أو undefined و تفرق عن المعامل "." بأنها لن تعطي خطأ في حال كانت قيمة المتغيير image تساوي null أو undefined.
ويمكنك الاطلاع اكثر عن الـ Optional chaining من هنا :
التعليقات