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

سؤال عن "if"

أي من هذه التنبيهات alert سيتم تنفيذه ؟

ماذا ستكون نتيجة التعبيرات داخل if(...)?

if (-1 || 0) alert( 'first' );
if (-1 && 0) alert( 'second' );
if (null || -1 && 1) alert( 'third' );

الإجابة: سيتم تنفيذ الأول والثالث

التفاصيل:

// ينفذ
// نتيجة -1 || 0 = -1 هي truthy
if (-1 || 0) alert("first");

// لا ينفذ
// -1 && 0 = 0, falsy
if (-1 && 0) alert("second");

// ينفذ
// العامل && له أولوية أعلى من ||
// لذلك يتم تنفيذ -1 && 1 أولا وينتج التالي:
// null || -1 && 1  ->  null || 1  ->  1
if (null || (-1 && 1)) alert("third");