Theme
Primary Color

إستخدام Guard Clauses لتقليل الشروط المتداخلة

ارجع من الدالة بدري عند الحالة غير الصالحة علشان المسار الأساسي يفضل واضح

شغل المثال بإستخدام Node.js لتوضيح الفكرة ويمكن تطبيق نفس المبدأ في لغات تانية

المثال العملي

function shipping(weight) {
  if (!Number.isFinite(weight) || weight <= 0) return 'Invalid Weight';
  if (weight > 20) return 'Contact Support';
  return 'Standard Shipping';
}
console.log(shipping(0));
console.log(shipping(5));
console.log(shipping(25));

النتيجة

Invalid Weight
Standard Shipping
Contact Support

كل شرط بيستبعد حالة مستقلة قبل الوصول للشحن العادي وده أسهل في القراءة من تداخل if داخل if

جرب بنفسك

أضف اختبار NaN واختبار وزن يساوي 20 قبل تعديل الحد

programming شرح