در جلسه قبلی از آموزش جاوا اسکریپت درباره دستور شرطی if صحبت کردیم و کاربردهای این دستور شرطی را به طور کامل به شما توضیح دادیم. یکی دیگر از دستورات شرطی که در برنامهنویسی به زبان جاوا اسکریپت مورداستفاده قرار میگیرد و دارای کاربردهای زیادی است دستور شرطی switch است که ما در این جلسه از آموزش جاوا اسکریپت رایگان قصد داریم به معرفی آن بپردازیم. برای شروع کار با این دستور شرطی وارد محیط کدنویسی خود میشویم و سپس فایل script.js را باز کرده و کدهای داخل آن را پاک میکنیم.
حالتهای مختلف در if و else
بررسی حالتها و شروط زیاد در if و else در زبان برنامهنویسی جاوا اسکریپت
در بخش قبلی بیان کردیم که ساختار if و else یک حالت یا شرط خاص را بررسی میکرد و در صورت برقرار بودن آن شرط عملیات خاصی را انجام میداد و در صورت برقرار نبودن شرط نیز عملیات دیگری را انجام میداد. حال ممکن است گاهی اوقات شما نیاز داشته باشید تا چندین حالت مختلف را بررسی کنید. یکی از راههایی که برای انجام این کار وجود دارد استفاده مداوم از چندین ساختار if و else است که نمیتواند ساختار بهینهای برای این شرایط باشد. بهعنوانمثال قطعه کد زیر را در نظر بگیرید:
var a, b;
a = 50;
b = 5;
var isEqual;
if (a < b){
// do somthing
}
if( a > b){
// do somthing
}
else{
// do somthing
}
همانطور که مشاهده میکنید اگر تعداد حالتها و شروط ما زیاد باشد باید چندین خط کد بنویسیم تا بتوانیم از همه حالتها با استفاده از دستورات شرطی if و else پشتیبانی کنیم. یکی از راهکارهای بهینهای که برای افزایش سرعت و بهبود قابلیت درک کدها در چنین شرایطی وجود دارد استفاده از دستور شرطی switch است که ما در این بخش از آموزش جاوا اسکریپت قصد داریم آن را توضیح دهیم. این دستور شرطی در بسیاری از زبانهای برنامهنویسی دیگر نیز وجود دارد.
دستور شرطی switch در جاوا اسکریپت
برای شروع کار با دستور شرطی switch در آموزش جاوا اسکریپت اجازه دهید تا کدهای قبلی خود را پاک کنیم و کار خود را با قطعه کد زیر آغاز کنیم:
var today = new Date().getDay();
console.log(today);
ما در ادامه جلسات آموزش جاوا اسکریپت به زبان ساده درباره مسئله نمونهسازی از کلاسها در زبان برنامهنویسی جاوا اسکریپت صحبت خواهیم کرد. در حال حاضر تنها کافی است بدانید که قطعه کد بالا اطلاعات روز جاری را از سیستم دریافت کرده و آن را داخل یک متغیر با نام today قرار میدهد. زمانی که قطعه کد بالا را اجرا میکنیم با خروجی عدد 1 مواجه خواهید شد. روزی که این کد اجرا میشود یکشنبه است و ازآنجاییکه در داخل یک آرایه اندیسها از عدد 0 شروع میشود و به همین علت نیز روز یکشنبه با اندیس 1 نمایش داده میشود. حال فرض کنید ما قصد داریم روز مربوط به اندیسی که دریافت میکنیم را چاپ کنیم که برای انجام این کار از دستور شرطی switch استفاده خواهیم کرد. در ادامه کدهای مربوط به انجام این کار را به شما ارائه میدهیم.
کدهای switch
کدهای مربوط به استفاده از دستور شرطی switch
برای کار با دستور شرطی switch در این قسمت از آموزش جاوا اسکریپت کدهای زیر را در نظر بگیرید:
var today = new Date().getDay();
var day;
switch(today){
case 0:
day = “Sunday”;
breack;
case 1:
day = “Monday”;
break;
case 2:
day = “Tuesday”;
break;
case 3:
day = “Wendsday”;
break;
case 4:
day = “Thursday”;
break;
case 5:
day = “Friday”;
break;
case 6:
day = “Saturday”;
break;
}
dodument.write(“ Today is: “ + day);
برای آشنایی با عملکرد switch در این قسمت از آموزش javascript اجازه دهید تا بخشی از کدهای بالا یعنی بخش زیر را به طور کاملتر توضیح دهیم:
case 0:
day = “Sunday”;
breack;
زمانی که شما متغیر today را به دستور شرطی switch میدهید این دستور اقدام به بررسی این متغیر و مقادیر مختلفی که میتواند داشته باشد میکند. در مثال بالا ابتدا مقدار 0 را برای این متغیر بررسی میکند. این قطعه کد بیان میکند که اگر مقدار متغیر today برابر 0 بود مقدار متغیر day را برابر Sunday قرار بده و سپس با استفاده از دستور break از بررسی سایر مقادیر خودداری میکند. بهاینترتیب دستور switch میتواند تمامی مقادیر را در بهینهترین حالت ممکن بررسی کند و از بررسی مقادیری که نیازی به بررسی آنها وجود ندارد نیز خودداری کند.
برای باقی روزهای هفته نیز به همین ترتیب عمل میکنیم و مقادیر مربوط به ایندکس را با روزهای هفته مقایسه کرده و سپس نام روز مربوطه را به کاربر نمایش میدهیم. یادگیری دستور switch در آموزش javascript رایگان و کدنویسی به این زبان از اهمیت زیادی برخوردار است و به همین علت بهتر است این قطعه کد را حتما تمرین کنید تا بتوانید بهخوبی به مفهوم switch مسلط شوید. با اجرای قطعه کد بالا مشاهده میکنید که خروجی زیر برای شما چاپ میشود:
Today is Monday
بررسی حالت default
بررسی حالت default در دستور switch در جاوا اسکریپت
در مثال بالا فرض کنید که علاوه بر تمامی حالتهایی که بیان کردیم حالت دیگری نیز ممکن است به وجود بیاید که ما نمیخواهیم در آن صورت عملکرد خاصی انجام شود یا این که قصد داریم در تمامی حالات به جز حالتهای بالا یک دستور مشخص اجرا شود. در چنین شرایطی میتوانیم از دستور default استفاده کنید که به همین منظور ایجاد شده است و ما در این بخش از آموزش جاوا اسکریپت قصد داریم از آن استفاده کرده و نحوه کارکردن آن را توضیح دهیم. برای کار با این دستور قطعه کد زیر را در نظر بگیرید:
var today = 20;
var day;
switch(today){
case 0:
day = “Sunday”;
breack;
case 1:
day = “Monday”;
break;
case 2:
day = “Tuesday”;
break;
case 3:
day = “Wendsday”;
break;
case 4:
day = “Thursday”;
break;
case 5:
day = “Friday”;
break;
case 6:
day = “Saturday”;
break;
default:
day = “ your value not found”;
}
dodument.write(“ Today is: “ + day);
با اجرای قطعه کد بالا مشاهده میکنید که مقدار Today is: your value nor found برای شما چاپ میشود. دلیل این موضوع این است که ما در ابتدا متغیر today را با مقدار 20 مقداردهی کردیم و ازآنجاییکه حالتی را برای مقدار 20 در نظر نگرفته بودیم دستور سوئیچ وارد حالت default شده و مقدار your value not found در متغیر day قرار گرفته و برای ما چاپ شد.
قسمت قبلی آموزش رایگان جاوا اسکریپت:
آشنایی با ویژگی قابل انتساب بودن
قسمت بعدی آموزش رایگان جاوا اسکریپت:
یا جهت مشاهده ویدیوهای اموزشی آموزش رایگان جاوا اسکریپت وارد این صفحه شوید