العودة إلى الدورة

سير التحكم: عبارات 'if' المتداخلة

JavaScript: الدورة الكاملة للمبتدئين من 'الصفر إلى الاحتراف'

35. سير التحكم: عبارات if المتداخلة

عبارة if المتداخلة هي عبارة if موضوعة داخل كتلة if أو else أخرى. هذا مفيد عندما يجب فحص شرط ثانوي فقط بعد استيفاء الشرط الأساسي بالفعل.

مثال: فحص الوصول المعقد

تخيل نظامًا يجب أن يكون فيه الحساب نشطًا، وإذا كان نشطًا، يجب أن يكون أيضًا مسؤولاً للحصول على امتيازات معينة.

javascript let accountActive = true; let userRole = 'admin';

if (accountActive) { console.log('Account is active.'); (الحساب نشط.)

if (userRole === 'admin') {
    console.log('Granting elevated privileges.'); (منح امتيازات مرتفعة.)
} else {
    console.log('Standard user access granted.'); (تم منح وصول المستخدم العادي.)
}

} else { console.log('Access Denied. Account is inactive.'); (تم رفض الوصول. الحساب غير نشط.) }

// Output: // Account is active. // Granting elevated privileges.

تحذير بشأن إمكانية القراءة

على الرغم من أن التداخل قوي، إلا أن الكثير من مستويات التداخل (التي غالبًا ما تسمى 'جحيم الاستدعاءات/callback hell' في سياقات أخرى) يمكن أن يجعل الكود صعب المتابعة. حاول استخدام عوامل التشغيل المنطقية (&& أو ||) للحفاظ على الشروط في مستوى واحد عندما يكون ذلك ممكنًا.