پس از این که بیسیک های کافی اسکریپت را فرا گرفتیم، اکنون نوبت آن است که به سراغ ساختارهای کنترلی و دستورات شرطی در این زبان برویم. همانطور که قبل تر نیز گفته بودیم، کافی اسکریپت پیاده سازی جاوااسکریپت با سینتکس روبی است. پس اگر با ساختار کنترلی در روبی آشنا باشید، اینجا کار بسیار ساده می شود.
یکی از مهم ترین بخش های برنامه نویسی، اینست که برنامه شما کنترل شده باشد. در واقع، ورودی ها و خروجی های مناسب را دریافت کنید و در صورتی که مطلوب نبودند، آنها را نادیده بگیرید یا در بهترین حالت، اروری به کاربر نشان دهید. اینجا سه ساختار اصلی if و if…else و if…else if…else را بررسی میکنیم. همچنین ساختار switch را.
سه ساختار if و else
ساختار if
از این ساختار، فقط برای کنترل یک شرط (که خود میتواند ترکیبی از چند شرط باشد) ، استفاده میکنیم. مثلا، ساده ترین شرط ممکن این است که بررسی کنیم آیا متغیر، مساوی مقداری هست یا نه. سپس اگر بود، برای ما یک پیغام نشان دهد. کد ما به این شکل خواهد بود :
if a == 3
alert a + " is equal to 3"
و معادل این کد در جاوا اسکریپت :
a = 3;
if (a === 3) {
alert(a + " is equal to 3");
}
در این ساختار، شما نمیتوانید تعریف کنید که اگر مقدار a برابر ۵ گردد، چه اتفاقی بیفتد.
ساختار if … else
در این ساختار، اگر شرط مقابل if ، به هر دلیلی (ورودی کاربر، تغییر در متغیر توسط برنامه نویس و …) false شود، عملیات دیگری انجام میدهد. ساختار کلی در کافیاسکریپت به این شکل است :
a = 5
if a == 3
alert a + " is equal to 3"
else
alert a + " is not equal to 3"
و معادل کد فوق در جاوااسکریپت :
a = 5;
if (a === 3) {
alert(a + " is equal to 3");
} else {
alert(a + " is not equal to 3");
}
این کد، میگوید اگر شرط if درست نبود، چه کار کن. حالا میخواهیم شرط غلط را رد کند، و شرط جدیدی اجرا کند. کافیست از ساختار بعدی استفاده کنیم.
ساختار if … else if … else
در این ساختار، به هر تعدادی که بخواهیم میتوانیم شرط تعیین کنیم. با این ساختار، شما به هر تعدادی که بخواهید میتوانید شرط تعیین کنید، و در نهایت اگر هیچکدام از شرط ها درست نبود، یک ارور به کاربر نشان دهید. ساختار کلی این حلقه در کافیاسکریپت بدین شکل است:
a = 1
if a == 2
alert a + " is 2"
else if a >= 2
alert a+" is greater than 2"
else
alert a + " is lesser than 2"
معادل این کد در جاوااسکریپت :
a = 1;
if (a === 2) {
alert(a + " is 2");
} else if (a >= 2) {
alert(a + " is greater than 2");
} else {
alert(a + " is lesser than 2");
}
این ساختار نیز یکی از ساختار های پر کاربرد است.
ساختار switch
اگر با زبان های C و ++C و … کار کرده باشید نیز با این ساختار آشنایید. این ساختار هم برای مواقعی کاربرد دارد که بیش از یک شرط داریم، و به نوعی جایگزینی برای else if به شمار میرود.
ساختار کلی این دستور در کافی اسکریپت بدین شکل است :
a = 2
switch a
when 1 then alert a + " is lesser than 2"
when 2 then alert a + " is 2"
when 3 then alert a + " is greater than 2"
else
alert "None of them"
معادل کد در جاوااسکریپت :
a = 2;
switch (a) {
case 1:
alert(a + " is lesser than 2");
break;
case 2:
alert(a + " is 2");
break;
case 3:
alert(a + " is greater than 2");
break;
default:
alert("None of them");
}
در این مطلب، با ساختارهای کنترلی کافیاسکریپت آشنا شدیم. در مطالب بعدی با حلقه های تکرار و سپس سایر مطالب مانند توابع و کلاس ها آشنا خواهیم شد.