ساختار کنترلی switch در جاوا اسکریپت

ار این ساختار در زمانی استفاده می شود که بخواهیم بر حسب مقادیر مختلف یک متغیر یا عبارت خاص ، دستورات متفاوتی اجرا شود.

شکل کلی استفاده از این ساختار به صورت زیر است:

نحوه عملکرد این ساختار به شرح زیر است:

ابتدا در پرانتز مقابل واژه کلیدی switch ، یک متغیر یا عبارت اعلام می شود . همچنین در هر دستور case ، یک مقدار مرتبط با آن متغیر نیز تعیین می شود . برنامه مقدار متغیر را ( که از قبل توسط یک تابع یا دستور مقدار دهی شده است ) را با مقدار تعیین شده برای هر case به ترتیب مقایسه کرده و در صورت برابر بودن آنها ، دستورات آن case و case های بعد از آن را اجرا می کند . در واقع دستورات تا زمان رسیدن به یک دستور break اجرا می شوند.

نکته : برای جلوگیری از اجرای case های بعدی همراه با case ای که اجرا می شود ، باید در پایان دستورات هر case از واژه کلیدی break استفاده کرد . برای دریافت توضیحات بیشتر ، به قسمت توضیح دستور break در پایین صفحه بروید.

قسمت default ، دستورات پیش فرض ساختار را تعیین می کند ، که در صورت عدم برقراری مقادیر تمام case های ساختار ، دستورات آن قسمت اجرا خواهد شد.

نکات مهم:

نوع متغیر تعیین شده در قسمت switch و مقدارهای هر یک از case ها باید با هم یکسان و از یک نوع باشند.

به تعداد مورد نیاز می توان از دستور case در ساختار switch استفاده کرد.

تعیین قسمت default در ساختار switch ، اختیاری است و می تواند تعیین نشود.

مقدار هیچ دو case متفاوتی ، نباید با هم یکسان باشد.

مثال : در مثال زیر دو کادر متن و یک دکمه فرمان قرار داده شده است . کادر متن اول یک متن یا عدد از کاربر دریافت کرده و با کلیک بر روی دکمه فرمان و فراخوانی تابع ( ) hello ، خروجی در کادر متن دوم نمایش داده می شود.

عملکرد تابع ( ) hello به شرح زیر است:

این تابع مقدار کنترل کادر متن اول یعنی txtinput ، را در متغیر matn ذخیره کرده و سپس در یک ساختار switch ،بر حسب مقادیر مختلف خروجی را در کادر متن دوم یعنی txtresult نمایش می دهد.

توجه: در اینجا به دلیل عدم استفاده از دستور break در پایان دستورات هر case با اجرای هر کدام از case های مثال ، دستورات بقیه case ها نیز اجرا می شود . بنابراین همواره خروجی ما در این حالت خروجی قسمت default است.

دستور break :

همانطور که در قسمت بالا نیز اشاره شد ، چنانچه یک دستور case در ساختار switch اجرا شود ، برنامه به طور اتوماتیک دستورات تمام case های بعد از آن را نیز اجرا خواهد کرد ، مگر اینکه به یک دستور break برسد . . برای جلوگیری از این مسئله ، باید در پایان دستورات هر case از دستور break استفاده کرد.

در این حالت در صورت وارد شدن برنامه به یک دستور یک case ، فقط دستورات آن case اجرا شده و اجرای بقیه case ها متوقف می شود.

شکل کلی استفاده از دستور break به صورت زیر است:

مثال: در مثال زیر ، مثال قسمت قبل را با دستور break بازنویسی کرده ایم . همانطور که در خروجی مشاهد می کنید ، در این حالت به دلیل استفاده از دستور braek در پایان هر case ، فقط دستورات آن case اجرا شده و از اجرای دستورات case های دیگر جلوگیری می شود . برای مشاهده خروجی در کادر متن txtinput متنی را وارد کرده و سپس بر روی دکمه فرمان کلیک کنید.
به این مطلب رای دهید
Telegram Facebook WhatsApp Twitter LinkedIn

دیدگاه خود را بیان کنید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.