یکی از مهمترین قابلیت های زبان جاوااسکریپت، توانایی آن در انجام دادن عکس العملهای متفاوت در شرایط مختلف است. بر این اساس این زبان قادر است که متغیرهای مختلف را با هم مقایسه کند و شرطهایی را برای آنها تعیین کند تا به یک نتیجه دلخواه برسد.
دستور if
اغلب اوقات هنگام نوشتن یک اسکریپت، شما نیاز دارید که تصمیم های متفاوتی در مقابل نتایج مختلف بگیرید. بطور مثال میخواهید هنگامیکه یک کاربر وارد سایت شما می شود اگر ساعت قبل از 10 صبح بود یک متن در بالای صفحه ظاهر شود و به کاربر صبح بخیر بگوید. در اینجا دستور if به کمک ما می آید. این دستور یکی از مهمترین دستور در کد نویسی است چون توسط آن می توانیم شرط تعیین کنیم که اگر اینطور شد، نتیجه این باشد. این دستور همیشه دو قسمت دارد: یکی قسمت شرط و دیگری قسمت نتیجه شرط است. به کد زیر توجه کنید:
حالا ببینیم که چه اتفاقی افتاده است، در خط سوم ما یک متغیر بنام d تعریف کردیم که به آن شئ Date را نسبت دادیم و در خط بعد از آن یک متغیر دیگر که یکی از متدهای آن شئ را مقدار دهی کردیم تا ساعت سیستم برای ما ذخیره شود، سپس با یک خط خالی قسمت شرط را جدا کردیم تا به خوانایی اسکریپت کمک کنیم. کلمه if را می نویسیم، دقت کنید که شرط را حتماً داخل پرانتز باید نوشت و در آن هم همانطور که مشاهده می کنید از عملگر کوچکتر استفاده کردیم. در اینجا ساعت سیستم در متغیر t ذخیره شده است و دستور if داره شرط کوچکتر بودن را بررسی می کند. در خط بعدی هم علامت آکلاد { } را بکار بردیم که در اینجا آنرا برای نظم و خوانایی بیشتر کد استفاده کردیم اما فراموش نکنید که این دستور ممکن است از چندین قسمت تشکیل شود که در آنصورت بکار بردن آکلاد لازم است تا بتوانیم هر قسمت را از هم جدا کنیم. در آخر هم دستور تایپ یک متن مناسب در صفحه را به عنوان نتیجه شرط نوشتیم.
دستور if...else
در مثال بالا درستی یک شرط بررسی شد و یک نتیجه هم در بر داشت، اما حالا می خواهیم در صورتی که شرط درست نبود هم یک نتیجه در بر داشته باشد، پس ما به یک قسمت دیگر در این دستور نیاز داریم که در حالت جدید مثال ما به این صورت خواهد بود: اگر ساعت قبل یا برابر 10 بود پس جمله صبح بخیر نمایش داده شود در غیر اینصورت متن سلام دوستان ظاهر شود. در کد بجای قسمت در غیر اینصورت می توانیم کلمه else را وارد کنیم تا به مفهوم مورد نظر برسیم.
document.write ( " Good morning " )
}
else
{
document.write ( " Hello friends ")
}
اجرای کد
دستور if...else if...else
if ( t <= 10 ) {
document.write ( " Good morning " )
}
else if ( t > 10 && t < 13 ) {
document.write ( " Hello friends " )
}
else if ( t >= 13 && t < 18 ) {
document.write ( " Good afternoon " )
}
else {
document.write ( " Good evening " )
}
در دستورات شرطی جاوااسکریپت به غیر از مجموعه دستورات if یک مورد دیگر هم هست بنام دستور switch که در صفحه بعد به توضیح آن می پردازیم.
نظرات شما عزیزان: