درود دوستان! توی قسمت قبل دیدیم که چطوری میتونیم شرایط مختلف توی یک برنامه رو با استفاده از if مدیریت کنیم. توی این قسمت با یک روش دیگه به اسم سوئیچ یا switch آشنا میشیم.
موارد زیر رو توی این قسمت یاد میگیریم:
- مدیریت شرطها با استفاده از switch
- کلمهکلیدی break چیه
- کلمهکلیدی default
- مقایسه توی switch چطوری انجام میگیره
- بدنههای چند خطی
- دستور switch و کدنویسی تمیز
مدیریت شرطها با استفاده از switch
ما از دستور switch برای بررسی شرطها استفاده میکنیم. معمولاً اگه جایی از برنامه if های متوالی زیادی داریم، بهتره اون رو با switch جایگزین کنیم تا خوانایی بهتری داشته باشه.
ابتدا قبل از اینکه با switch آشنا بشیم یک مثال رو بررسی کنیم. فرض کنیم چند if متوالی به صورت زیر داریم:
const number = prompt("Enter a number"); if (number == 10) { alert("Ten"); } else if (number == 9) { alert("Nine"); } else if (number == 8) { alert("Eight"); } else if (number == 7) { alert("Seven"); } else if (number == 6) { alert("Six"); }
توی چنین موقعیتی که شرطهای زیادی وجود داره و هر توی هر شرط، یک مقدار داره با یک مقدار از پیش تعریف شده (توی این مثال number) مقایسه میشه بهتره از switch استفاده کنیم.
این کد با ساختار switch به صورت زیر هست:
const number = prompt("Enter a number"); switch (number) { case "10": alert("Ten"); break; case "9": alert("Nine"); break; case "8": alert("Eight"); break; case "7": alert("Seven"); break; case "6": alert("Six"); break; // ... }
همونطور که میبینیم، ما یک switch داریم و چندین case. چیزی که توی پرانتز switch نوشته میشه، همون مقدار از پیش تعریف شدهای هست که باید با مقادیر مختلف مقایسه بشه.
ما برای هر شرط و مقایسه، یک case اختصاصی مینویسیم. جلوی کلمهکلیدی case مقداری رو مینویسیم که میخوایم مقایسه روی اون انجام بگیره. اگه حاصل مقایسه با اولین برابر با باشه، جاوااسکریپت مورد نظرش رو پیدا کرده و بدنه مربوط به همون اجرا میشه. در غیر این صورت جاوااسکریپت به سراغ های بعدی میره.