این آموزش در تاریخ ۱۴۰۱/۰۴/۰۴ آپدیت شده است.
کار با عبارت های شرطی در جاوا اسکریپت
سلام خدمت تمامی دوستان و همراهان محترم سایت آموزشی فری لرن ، امیدوارم که حال همگیتون خوب باشه. لطفا در ادامه با آموزش کار با عبارت های شرطی در جاوا اسکریپت با من همراه باشید.
Free-Learn
آنچه در این جلسه میخوانید :
عبارت های شرطی در جاوا اسکریپت
عبارت های شرطی یا به انگلیسی Conditional Statements
از نظر بنده یکی از جذابترین بخش های موجود در تمامی زبان های برنامه نویسی می باشد.
یعنی نه فقط در جاوااسکریپت بلکه در همه ی زبان های برنامه نویسی از جمله ( #PHP , C و.. ) این عبارت های شرطی یا هم دستورات شرطی وجود دارند.
اسمش روشه ، یعنی شرط گذاشتن یا شرط ایجاد کردن ، یعنی تصمیم گیری بر اساس شرط های مختلف ، یعنی اجرای یک برنامه طبق شرایط خاصی که ما میتونیم این شرایط ( شرط هارو ) تعریف کنیم.
بفرض مثال میگیم اگه کاربر فلان مقدار رو وارد کرد تو فلان کارو کن و اگه بهمان مقدارو وارد کرد تو بهمان کارو کن، به همین راحتی تموم شد رفت، به این میگن شرط گذاشتن یا ایجاد دستور شرطی.
Free-Learn
انواع دستورات شرطی در جاوا اسکریپت
ما در زبان جاوااسکریپت ( و البته میتونیم بگیم در اکثر زبان های برنامه نویسی ) چندین نوع یا حالت از دستورات شرطی داریم که این حالت ها بصورت زیر می باشد :
- دستور شرطی
if
- دستور شرطی
else
- دستور شرطی
else if
- دستور شرطی
switch
( در جلسه بعدی آموزش داده خواهد شد )
۳ تا دستور شرطی اول رو که میتونیم بگیم یکی هستند، یعنی در واقع در یک مجموعه هستند و معمولا باهم مورد استفاده قرار میگیرند ولی خب فقط if رو میشه تکی تنها هم ازش استفاده کرد.
اون دستور آخری ( یعنی switch ) این هم اساس کارش بر پایه شرط هست ولی خب شکل نوشتاریش و نحوه استفادش با اون ۳ تا کمی فرق میکنه که ان شاالله در جلسه بعدی با switch بطور کامل آشنا خواهیم شد. در این جلسه میخوایم با if و else و else if آشنا بشیم.
Free-Learn
دستور شرطی if در جاوا اسکریپت
خب در ادامه میخوایم با دستور if
( در لغت به فارسی یعنی اگر / چنانچه ) آشنا بشیم، این دستور اصلی ترین و یا میتونیم بگیم ستون اصلی دستورات شرطی می باشد.
یعنی اگه بخواید از else یا else if استفاده کنید باید قبلش حتما از if استفاده کرده باشید، در غیراینصورت برنامه بهتون خروجی نمیده.
شکل کلی دستور if در جاوا اسکریپت ( یا هم در اکثر زبان های برنامه نویسی ) بصورت زیر می باشد :
1 2 3 |
if ( شرط ما ) { // چیزی که باید اجرا بشه وقتی شرط درست هست } |
مثال شماره ۱ : خب ۲تا متغیر a و b با مقادیر ۵ تعریف کردیم، بعدش شرط گذاشتیم گفتیم اگه a با b مساوی بود در خروجی چاپ کن ” آره برابره ”
1 2 3 4 5 6 7 8 9 10 |
<script> var a = 5; var b = 5; if( a == b ){ document.write("آره برابره"); } </script> |
Free-Learn
دستور شرطی else در جاوا اسکریپت
در مثال قبلی خب بله مقادیر متغیر a و b باهم مساوی بودن و بهمون پیغام میداد که ” آره برابره “، ولی خب اگه برابر نبود چی؟! شاید من بخوام اگه مقادیر متغیرها باهم برابر نبود، دوباره یه پیغام دیگه بده و بگه مثلا ” شرمنده برابر نیست ” ، خب دیگه اینجاست که دستور else میاد وسط
پس دیگه بطور کلی بدونید، قسمت صحیح شرط رو با if مشخص کردیم و قسمت غلط شرط رو با else مشخص میکنیم، شکل کلی دستور else بصورت زیر می باشد :
1 2 3 4 5 |
if ( شرط ما ) { // چیزی که باید اجرا بشه وقتی شرط درست هست } else{ // چیزی که باید اجرا بشه وقتی شرط غلط هست } |
مثال شماره ۱ : اگه مقادیر متغیرهای a و b باهم مساوی بودن خب پیغام میده ” آره برابره ” و اگه برابر نبود پیغام میده ” شرمنده برابر نیست ”
1 2 3 4 5 6 7 8 9 10 11 12 |
<script> var a = 4; var b = 5; if( a == b ){ document.write("آره برابره"); }else{ document.write("شرمنده برابر نیست"); } </script> |
Free-Learn
دستور شرطی else if در جاوا اسکریپت
خب دوستان در ادامه ی آموزش کار با عبارت های شرطی در جاوا اسکریپت میخوایم با دستور else if
آشنا بشیم و ببینیم چجوری میتونیم ازش استفاده کنیم.
این دستور داره میگه ( در غیراینصورت اگر ) ، یعنی در واقع اگه بخش اول شرط ( که با if ) مشخصش میکردیم غلط بود میاد و else if رو بررسی میکنه و اگه else if درست بود خب دیگه همینو به خروجی میفرسته، ولی اگه باز else if هم غلط بود و از else هم استفاده کرده باشیم میره و else رو بررسی میکنه و هرچی مقدار else بود در خروجی نمایشش میده.
شکل کلی دستور else if بصورت زیر می باشد :
1 2 3 4 5 6 7 8 9 10 11 |
if ( شرط اول ) { // چیزی که باید اجرا بشه وقتی شرط اول درست باشه } else if ( شرط دوم ) { // چیزی که باید اجرا بشه وقتی شرط اول غلط باشه } else if ( شرط سوم ) { // چیزی که باید اجرا بشه وقتی شرط دوم غلط باشه } else if ( N ) { // دیگه همینجور تا هرچقدر دلمون بخواد میتونیم شرط بزاریم } else { // اگه شرط اول و شرط دوم و شرط سوم و.. غلط باشه } |
مثال شماره ۱ : اگه متغیرهای a و b باهم برابر بودن پیغام میده ” آره برابره ” ولی اگه نبود میره و بخش دوم شرط که با else if ایجاد شده رو بررسی میکنه و اگه مقدار متغیر a بزرگتر از مقدار متغیر b بود پیغام میده ” آره متغیر a از b بزرگتره ” و در نهایت اگه هیچکدوم از شرط ها برقرار نبود میره و else رو اجرا میکنه.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<script> var a = 6; var b = 5; if ( a == b ){ document.write("آره برابره"); } else if ( a > b ){ document.write("آره متغیر a از b بزرگتره"); } else{ document.write("متغیرها باهم مساوی نیستن"); document.write("<br>"); document.write("متغیر a بزرگتر از متغیر b نیست"); } </script> |
Free-Learn
مثال های بیشتر
مثال شماره ۱ : استفاده همزمان از if و else و else if
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
<script> var a = 2; // بخش اول شرط if( a==5 ){ document.write("آره 5 هس"); } // بخش دوم شرط // زمانی این بخش بررسی میشه که بخش اول غلط باشه else if( a > 3 ){ document.write("5 نیست ولی بزرگتر از 3 هست"); } // بخش سوم شرط // زمانی این بخش بررسی میشه که بخش اول و بخش دوم هردو غلط باشند else{ document.write("متاسفانه مقدار متغیر a نه برابر با 5 هست و نه بزرگتر از 3"); } </script> |
مثال شماره ۲ :دریافت یک نام کاربری و رمز از کاربر و سپس چک کردن نام کاربری و رمز وارد شده با نام کاربری و رمز از قبل تعریف شده در برنامه
در مثال زیر از چندین else if استفاده شده برای بررسی کردن وضعیت های مختلف شرط ( مثلا اگه طرف نام کاربری رو درست وارد کرده بود ولی رمز اشتباه خب پیغام میده یا اگه مثلا رمز درست بود و نام کاربری اشتباه دوباره یه پیغام دیگه و… )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
<script> function Check(){ var my_user_name, my_user_password, username, userpassword, result; username = document.getElementById("User_Name").value; userpassword = document.getElementById("User_Password").value; result = document.getElementById("Result"); my_user_name = "free-learn"; my_user_password = 12345; if ( username == "" && userpassword == "" ){ result.innerHTML = "هیچی خو وارد نکردی"; } else if ( username == my_user_name && userpassword != my_user_password ){ result.innerHTML = "نام کاربری درسته ولی رمز اشتباهه"; } else if ( username != my_user_name && userpassword == my_user_password ){ result.innerHTML = "نام کاربری اشتباه می باشد ولی رمز صحیح می باشد"; } else if ( username == my_user_name && userpassword == my_user_password ){ result.innerHTML = "تبریک، نام کاربری و رمز صحیح می باشد"; } else{ result.innerHTML = "نام کاربری و رمز اشتباه می باشد"; } } </script> |