Ø£ØÙاÙÙØ§ ÙØ±Ùد تÙÙÙØ° Ø£ÙØ§Ù ر ٠ختÙÙØ© Ø¥Ø¹ØªÙ Ø§Ø¯ÙØ§ عÙÙ ØØ§Ùات ٠ختÙÙØ©.
ÙØ¹Ù
Ù ÙØ°Ø§ ÙÙ
ÙÙÙØ§ استخداÙ
عبارة if ÙØ§ÙØ§ÙØ¹Ø§Ù
Ù Ø§ÙØ´Ø±Ø·Ù ?, Ø§ÙØ°Ù ÙØ³Ù
Ù Ø£ÙØ¶Ùا Ø§ÙØ¹Ø§Ù
Ù âØ¹ÙØ§Ù
Ø© Ø§ÙØ§Ø³ØªÙÙØ§Ù
â.
عبارة âifâ
إ٠عبارة if(...) تÙÙÙ
بتÙÙÙØ° Ù
ا بÙ٠اÙÙÙØ³ÙÙ ÙØ¥Ø°Ø§ ÙØ§Ùت اÙÙØªÙجة true, تÙÙÙ
بتÙÙÙØ° اÙÙÙØ¯ اÙÙ
ØØ¯Ø¯.
عÙ٠سبÙ٠اÙ٠ثاÙ:
let year = prompt('Ù٠أ٠عاÙ
تÙ
ÙØ´Ø± ØªØ®ØµÙØµØ§Øª ECMAScript-2015?', '');
if (year == 2015) alert( 'إجابة صØÙØØ©!' );
ÙÙ ÙØ°Ø§ اÙÙ
Ø«Ø§Ù ÙØ¥Ù Ø§ÙØ´Ø±Ø· عبارة ع٠عÙ
ÙÙØ© إختبار تساÙÙ Ø¨Ø³ÙØ·Ø© (year == 2015), ÙÙÙÙ ÙÙ
Ù٠أ٠ÙÙÙÙ Ø£ÙØ«Ø± تعÙÙØ¯Ùا.
إذا Ø£Ø±Ø¯ÙØ§ تÙÙÙØ° Ø£ÙØ«Ø± ٠٠أ٠ر ÙÙØ¬Ø¨ عÙÙÙØ§ ÙØ¶Ø¹Ù٠داخ٠أÙÙØ§Ø³ ٠عÙÙÙØ©:
if (year == 2015) {
alert("ÙØ°Ù صØÙØ!");
alert("Ø£ÙØª ذÙÙ!");
}
Ù
Ù Ø§ÙØ£Ùض٠أ٠تضع Ø§ÙØ£ÙاÙ
ر بÙ٠أÙÙØ§Ø³ Ù
عÙÙÙØ© {} ÙÙ ÙÙ Ù
رة تستخدÙ
ÙÙÙØ§ عبارة if ØØªÙ إذا أردت تÙÙÙØ° Ø£Ù
ر ÙØ§ØØ¯. ÙØ°Ø§ ÙØØ³Ù ÙØ±Ø§Ø¡Ø© Ø§ÙØ£ÙاÙ
ر.
Ø§ÙØªØÙÙ٠إÙ٠اÙÙÙ٠اÙÙ ÙØ·ÙÙØ©
عبارة if (â¦) تÙÙÙ
بتÙÙÙØ° Ø§ÙØªØ¹Ø¨Ùر اÙÙ
ÙØªÙب بÙ٠اÙÙÙØ³ÙÙ ÙØªÙÙÙ
بتØÙÙ٠اÙÙØ§ØªØ¬ Ø¥ÙÙ ÙÙÙ
Ø© Ù
ÙØ·ÙÙØ©.
Ø¯Ø¹ÙØ§ ÙØ±Ø§Ø¬Ø¹ عÙÙ ÙÙØ§Ø¹Ø¯ Ø§ÙØªØÙÙÙ Ù Ù ÙØ°Ø§ Ø§ÙØ¯Ø±Ø³ ÙÙØ¹ Ø§ÙØªØÙÙÙØ§Øª:
- Ø§ÙØ±ÙÙ
0, اÙÙØµ اÙÙØ§Ø±Øº"",null,undefined, ÙNaNÙØµØ¨ØÙÙfalse. ÙÙÙØ°Ø§ Ø§ÙØ³Ø¨Ø¨ ÙØ³Ù ÙÙ âfalsyâ ÙÙÙ . - اÙÙÙÙ
Ø§ÙØ£Ø®Ø±Ù تصبØ
true, ÙÙÙØ°Ø§ ÙØ³Ù ÙÙ âtruthyâ.
ÙØ°ÙÙ ÙØ¥Ù Ø§ÙØ£Ùا٠ر اÙÙ ÙØªÙبة ØªØØª ÙØ°Ø§ Ø§ÙØ´Ø±Ø· Ù٠تÙÙØ° Ø£Ø¨Ø¯ÙØ§:
if (0) { // 0 ÙÙÙÙ falsy
...
}
ÙÙÙ ÙØ°Ù Ø§ÙØØ§ÙØ© ستÙÙØ° Ø¯Ø§Ø¦Ù ÙØ§:
if (1) { // 1 ÙÙÙÙ truthy
...
}
ÙÙ
ÙÙÙØ§ Ø£ÙØ¶Ùا تÙ
Ø±ÙØ± ÙÙÙ
Ø© Ù
ÙØ·ÙÙØ© Ù
Ø³Ø¨ÙØ© Ø§ÙØªÙÙÙØ° Ø¥ÙÙ if, Ù
Ø«Ù:
let cond = (year == 2015); // عاÙ
Ù Ø§ÙØªØ³Ø§ÙÙ ÙÙØªØ¬ true Ø£Ù false
if (cond) {
...
}
عبارة âelseâ
عبارة if ÙØ¯ ØªØØªÙ٠عÙ٠جزء âelseâ Ø¥Ø®ØªÙارÙ. ÙØªÙ
تÙÙÙØ°Ùا Ø¹ÙØ¯Ù
ا ÙÙÙÙ Ø§ÙØ´Ø±Ø· false.
عÙ٠سبÙ٠اÙ٠ثاÙ:
let year = prompt("Ù٠أ٠عاÙ
تÙ
ÙØ´Ø± ØªØ®ØµÙØµØ§Øª ECMAScript-2015?", "");
if (year == 2015) {
alert("تخÙ
ÙÙ٠صØÙØ!");
} else {
alert("ÙÙÙ ÙÙ
ÙÙ٠أ٠تخطئ Ø"); // any value except 2015
}
Ø§ÙØ¹Ø¯Ùد Ù Ù Ø§ÙØØ§ÙØ§Øª: âelse ifâ
Ø£ØÙاÙÙØ§ ÙØ±Ùد إختبار Ø§ÙØ¹Ø¯Ùد Ù
Ù Ø§ÙØØ§ÙØ§Øª اÙÙ
ختÙÙØ©. ÙÙ
Ù٠استخداÙ
else if ÙØ¹Ù
Ù ÙØ°Ø§.
عÙ٠سبÙ٠اÙ٠ثاÙ:
let year = prompt("Ù٠أ٠عاÙ
تÙ
ÙØ´Ø± ØªØ®ØµÙØµØ§Øª ECMAScript-2015?", "");
if (year < 2015) {
alert("Ù
Ø¨ÙØ± Ø¬Ø¯ÙØ§");
} else if (year > 2015) {
alert("Ù
تأخر Ø¬Ø¯ÙØ§");
} else {
alert("تÙ
اÙ
ÙØ§");
}
Ù٠اÙÙÙØ¯ Ø§ÙØ³Ø§Ø¨Ù, تÙÙÙ
Ø¬Ø§ÙØ§ Ø³ÙØ±Ùبت Ø£ÙÙÙØ§ Ø¨ÙØØµ year < 2015. إذا ÙØ§Ù خطأ, ØªÙØªÙÙ ÙÙØ´Ø±Ø· Ø§ÙØªØ§ÙÙ year > 2015. إذا ÙØ§Ù خطأ Ø£ÙØ¶Ùا تعرض آخر alert.
ÙÙ
Ù٠أ٠ÙÙØ¬Ø¯ Ø§ÙØ¹Ø¯Ùد Ù
Ù else if . آخر else Ø¥Ø®ØªÙØ§Ø±ÙØ©.
Ø§ÙØ¹Ø§Ù Ù Ø§ÙØ´Ø±Ø·Ù â?â
Ø£ØÙØ§ÙØ§ ÙØ±Ùد ØªØ®ØµÙØµ ÙÙÙ Ø© Ù ØªØºÙØ± Ø¨ÙØ§Ø¡Ùا عÙ٠شرط ٠عÙÙ.
عÙ٠سبÙ٠اÙ٠ثاÙ:
let accessAllowed;
let age = prompt('ÙÙ
عÙ
ر٠Ø', '');
if (age > 18) {
accessAllowed = true;
} else {
accessAllowed = false;
}
alert(accessAllowed);
Ø§ÙØ¹Ø§Ù Ù Ø§ÙØ´Ø±Ø·Ù Ø£Ù Ø¹Ø§Ù Ù Ø¹ÙØ§Ù Ø© Ø§ÙØ§Ø³ØªÙÙØ§Ù ÙÙ ÙÙÙØ§ Ù Ù ÙØ¹Ù ÙØ°Ø§ Ù٠سطر Ø¨Ø³ÙØ·.
ÙØªÙ
تÙ
Ø«ÙÙÙ Ø¨Ø¹ÙØ§Ù
Ø© استÙÙØ§Ù
?. Ø£ØÙØ§ÙØ§ ÙØ³Ù
Ù âternaryâ ÙØ£Ù ÙÙ 3 Ù
عاÙ
ÙØ§Øª. ÙÙÙ Ø§ÙØ¹Ø§Ù
٠اÙÙØÙØ¯ ÙÙ Ø¬Ø§ÙØ§ Ø³ÙØ±Ùبت Ø§ÙØ°Ù ÙÙ ÙØ°Ø§ Ø§ÙØ¹Ø¯Ø¯ Ù
٠اÙÙ
عاÙ
ÙØ§Øª.
طرÙÙØ© ÙØªØ§Ø¨ØªÙ ÙØ§ÙتاÙÙ:
let result = condition ? value1 : value2;
ÙØªÙ
تÙÙÙØ° condition ÙØ¥Ø°Ø§ ÙØ§Ù صØÙØ ÙØªÙ
إرجاع value1 ÙØºÙر ذÙÙ ÙØªÙ
إرجاع value2.
عÙ٠سبÙ٠اÙ٠ثاÙ:
let accessAllowed = age > 18 ? true : false;
ÙÙ
ÙÙÙØ§ تجاÙÙ Ø§ÙØ£ÙÙØ§Ø³ ØÙÙ age > 18. ÙØ°Ø§ Ø§ÙØ¹Ø§Ù
Ù ÙØ¯Ù٠أÙÙÙÙØ© Ø£ÙÙ ÙÙÙØ°Ø§ ÙØªÙ
تÙÙÙØ°Ù بعد عÙ
ÙÙØ© اÙÙ
ÙØ§Ø±ÙØ© >.
ÙØ°Ø§ اÙ٠ثا٠٠طاب٠ÙÙÙ Ø«Ø§Ù Ø§ÙØ³Ø§Ø¨Ù:
// عاÙ
٠اÙÙ
ÙØ§Ø±ÙØ© "age > 18" ÙÙÙØ° Ø£ÙÙÙØ§
// (ÙØ§ ØØ§Ø¬Ø© ÙÙØ¶Ø¹Ø© داخ٠أÙÙØ§Ø³)
let accessAllowed = age > 18 ? true : false;
ÙÙÙ Ø§ÙØ£ÙÙØ§Ø³ تجع٠اÙÙÙØ¯ Ù ÙØ±ÙØ¡ Ø£ÙØ«Ø± ÙÙØ°ÙÙ ÙÙØµØ Ø¨Ø§Ø³ØªØ®Ø¯Ø§Ù ÙØ§
Ù٠اÙÙ
Ø«Ø§Ù Ø§ÙØ³Ø§Ø¨Ù ÙÙ
ÙÙÙØ§ عدÙ
استخداÙ
Ø§ÙØ¹Ø§Ù
Ù Ø§ÙØ´Ø±Ø·Ù ÙØ£Ù عÙ
ÙÙØ© اÙÙ
ÙØ§Ø±ÙØ© ترجع true/false:
// Ù
Ø«Ù
let accessAllowed = age > 18;
Ø§ÙØ¹Ø¯Ùد Ù Ù â?â
تتابع ? ÙÙ
ÙÙ٠إرجاع ÙÙÙ
Ø© تعتÙ
د عÙÙ Ø£ÙØ«Ø± Ù
٠شرط.
عÙ٠سبÙ٠اÙ٠ثاÙ:
let age = prompt("Ø§ÙØ¹Ù
رØ", 18);
let message =
age < 3
? "Ù
Ø±ØØ¨Ùا ÙØ§ ØµØºÙØ±Ù!"
: age < 18
? "Ø£ÙÙØ§!"
: age < 100
? "تØÙاتÙ!"
: "ÙØ§ ÙÙ Ù
٠عÙ
ر ØºÙØ± عادÙ!";
alert(message);
رب٠ا ÙÙÙÙ Ù Ù Ø§ÙØµØ¹Ø¨ Ù Ø¹Ø±ÙØ© ٠ا ÙØØ¯Ø« ÙÙÙ٠إذا ÙØ¸Ø±Ùا Ø¹Ù ÙØ±Ø¨ Ø³ÙØ¬Ø¯ Ø£Ù٠٠جرد تتابع ÙÙ Ø¬Ù ÙØ¹Ø© إختبارات:
- Ø£ÙÙ Ø¹ÙØ§Ù
Ø© استÙÙØ§Ù
تختبر إذا ÙØ§Ù
age < 3. - Ù٠صØÙØ ØªØ±Ø¬Ø¹
'Ù Ø±ØØ¨Ùا ÙØ§ ØµØºÙØ±Ù!'. ÙÙÙ ÙÙ ÙÙ٠تÙÙ Ù Ù٠ا بعد اÙÙÙØ·ØªÙÙ 'â:â'ÙØªØ®ØªØ¨Ø±age < 18. - Ù٠صØÙØ ØªØ±Ø¬Ø¹
'Ø£ÙÙØ§!'. ÙÙÙ ÙÙ ÙÙ٠تÙÙ Ù Ù٠ا بعد اÙÙÙØ·ØªÙÙ 'â:â'ÙØªØ®ØªØ¨Ø±age < 100. - Ù٠صØÙØ ØªØ±Ø¬Ø¹
'تØÙاتÙ!'. ÙÙÙ ÙÙ ÙÙ٠تÙÙ Ù Ù٠ا بعد اÙÙÙØ·ØªÙÙ Ø§ÙØ£Ø®ÙرتÙÙ 'â:â'ÙØªØ±Ø¬Ø¹'ÙØ§ Ù٠٠٠ع٠ر ØºÙØ± عادÙ!'.
ÙÙØ§ Ù
ا ÙØ¨Ø¯Ù عÙÙ٠باستخداÙ
if..else:
if (age < 3) {
message = "Ù
Ø±ØØ¨Ùا ÙØ§ ØµØºÙØ±Ù!";
} else if (age < 18) {
message = "Ø£ÙÙØ§!";
} else if (age < 100) {
message = "تØÙاتÙ!";
} else {
message = "ÙØ§ ÙÙ Ù
٠عÙ
ر ØºÙØ± عادÙ!";
}
Ø§Ø³ØªØ®Ø¯Ø§Ù ØºÙØ± عاد٠٠â?â
Ø£ØÙØ§ÙØ§ ÙØªÙ
استخداÙ
Ø¹ÙØ§Ù
Ø© Ø§ÙØ§Ø³ØªÙÙØ§Ù
? ÙØ¨Ø¯ÙÙ Ù if:
let company = prompt('Ø£Ù Ø´Ø±ÙØ© Ø£ÙØ´Ø£Øª Ø¬Ø§ÙØ§ Ø³ÙØ±Ùبت Ø', '');
(company == 'Netscape') ?
alert('صØÙØ!') : alert('خطأ.');
اعتÙ
Ø§Ø¯ÙØ§ عÙÙ Ø§ÙØ´Ø±Ø· company == 'Netscape', ÙØªÙ
تÙÙÙØ° Ø§ÙØ¬Ø²Ø¡ Ø§ÙØ£ÙÙ Ø£Ù Ø§ÙØ«Ø§Ù٠بعد ? ÙÙØ¸Ùر Ø§ÙØªÙبÙÙ.
ÙÙØ§ ÙÙ ÙÙÙ Ø¨ØªØ®ØµÙØµ ÙÙ٠٠ختÙÙØ© ÙÙ ØªØºÙØ± ب٠ÙÙ ÙØ§ بتÙÙÙØ° Ø£ÙØ§Ù ر ٠ختÙÙØ© Ø§Ø¹ØªÙ Ø§Ø¯ÙØ§ عÙÙ Ø§ÙØ´Ø±Ø·
ÙØ§ ÙÙØµØ Ø¨Ø§Ø³ØªØ®Ø¯Ø§Ù Ø§ÙØ¹Ø§Ù Ù Ø¨ÙØ°Ù Ø§ÙØ·Ø±ÙÙØ©.
ÙØ°Ø§ Ø§ÙØªØ¹Ø¨Ùر Ù
ختصر ع٠عبارة if ÙÙÙÙ٠أÙÙ ÙØ±Ø§Ø¡Ø©.
ÙØ°Ø§ ÙÙØ³ اÙÙÙØ¯ باستخداÙ
عبارة if ÙÙÙ
ÙØ§Ø±ÙØ©:
let company = prompt('Ø£Ù Ø´Ø±ÙØ© Ø£ÙØ´Ø£Øª Ø¬Ø§ÙØ§ Ø³ÙØ±Ùبت Ø', '');
if (company == 'Netscape') {
alert('صØÙØ!');
} else {
alert('خطأ.');
}
عÙÙÙÙØ§ ØªÙØØµ اÙÙÙØ¯ رأسÙÙØ§. ÙØ°ÙÙ ÙØ¥Ù Ø§ÙØ£ÙÙØ§Ø¯ Ø§ÙØªÙ ØªÙØªØ¨ عÙÙ Ø£ÙØ«Ø± ٠٠سطر تÙÙÙ Ù ÙØ±Ùءة Ø£ÙØ«Ø± Ù Ù Ø§ÙØ£Ù ر Ø§ÙØ°Ù ÙÙØªØ¨ عÙ٠سطر ÙØ§ØØ¯ Ø£ÙÙÙ Ø·ÙÙÙ.
اÙÙØ¯Ù Ù
Ù Ø¹ÙØ§Ù
Ø© Ø§ÙØ§Ø³ØªÙÙØ§Ù
? Ù٠إرجاع ÙÙÙ
Ø© أ٠أخر٠اعتÙ
Ø§Ø¯ÙØ§ عÙ٠شرط Ù
عÙÙ. Ù
Ù ÙØ¶Ù٠استخدÙ
ÙØ§ ÙÙØ°Ø§ Ø§ÙØºØ±Ø¶ ÙÙØ·. ÙØ§Ø³ØªØ®Ø¯Ù
if Ø¹ÙØ¯Ù
ا ØªØ±ÙØ¯ تÙÙÙØ° Ø£ÙØ§Ù
ر Ù
ختÙÙØ© ÙÙ ÙÙ ØØ§ÙØ©.
Ø§ÙØªØ¹ÙÙÙØ§Øª
<code>Ø ÙÙÙÙØ«Ùر Ù Ù Ø§ÙØ³Ø·Ùر استخدÙ<pre>Ø ÙÙØ£Ùثر Ù Ù 10 Ø³Ø·ÙØ± استخد٠(plnkr, JSBin, codepenâ¦)