الرجوع الي الدرس

نتيجة التنبيهات التي بينها OR?

ما خرج الكود التالي ؟

alert( alert(1) || 2 || alert(3) );

الإجابة: أولًا 1 ثم 2.

alert( alert(1) || 2 || alert(3) );

استدعائ alert لا يرجع أي قيمة أو بمعنى آخر يرجع undefined.

  1. أول OR || تنفذ العملية على يسارها alert(1). وهذا يعرض أول رسالة 1.
  2. إن alert ترجع undefined لذلك تنتقل OR للعملية الثانية بحثًا عن قيمة truthy.
  3. القيمة الثانية 2 هي truthy لذلك يتوقف التنفيذ وترجع 2 ويتم عرضها.

لن يتم عرض 3 لأن التنفيذ لم يصل إلى alert(3).