Darsliklar JavaScript Switch (shart tanlash operatori)

JavaScript JavaScript Switch (shart tanlash operatori)

switch (shart tanlash operatori) — bitta qiymatni ko’plab mumkin bo’lgan variantlar bilan solishtirishning tozaroq usuli. Uzun if...else if zanjiri o’qishni qiyinlashtirganda, switch kodni ancha tartibli qiladi. U ayniqsa aniq, sanab o’tiladigan variantlar bilan ishlashda qulay.

switchbir ifodaning qiymatini bir necha case yorlig’i bilan ketma-ket solishtirib, mos kelganini bajaradigan tanlash operatori. Har bir case odatda break bilan tugaydi.

Oddiy switch

switch berilgan qiymatni har bir case bilan solishtiradi va mos kelganini bajaradi:

let kun = 3;
switch (kun) {
    case 1:
        console.log("Dushanba");
        break;
    case 2:
        console.log("Seshanba");
        break;
    case 3:
        console.log("Chorshanba");
        break;
    default:
        console.log("Noma'lum kun");
}
Chorshanba

kun qiymati 3 bo’lgani uchun case 3 bajarildi. default esa hech qaysi case mos kelmaganda ishlaydigan zaxira variant (else kabi).

break ning muhimligi

break operatori juda muhim — u switchdan chiqishni ta’minlaydi. Agar break yozilmasa, dastur keyingi caselarga ham “sirg’alib” o’tib ketadi (fall-through):

let son = 1;
switch (son) {
    case 1:
        console.log("Bir");
    case 2:
        console.log("Ikki");
    case 3:
        console.log("Uch");
        break;
}
Bir
Ikki
Uch

case 1 da break yo’qligi uchun dastur to’xtamay, keyingilarni ham bajardi. Odatda bu xato — har bir caseni break bilan yakunlashni odat qiling.

switch va if…else: qaysi biri qachon?

Ikkovining farqini jadvalda ko’ramiz:

Xususiyat switch if...else
Solishtirish turi aniq tenglik (===) har qanday shart
Oraliq (x > 5) qo’llab-quvvatlamaydi qo’llab-quvvatlaydi
O’qilishi ko’p variantda toza murakkab shartda moslashuvchan

Amaliy qoida: qiymat aniq variantlar bilan (kun, menyu tanlovi) solishtirilsa — switch; oraliq yoki murakkab shart bo’lsa — if...else.

Amaliy misol: menyu

switch menyu tuzishda ideal:

let tanlov = "kirish";
switch (tanlov) {
    case "royxat":
        console.log("Ro'yxatdan o'tish");
        break;
    case "kirish":
        console.log("Tizimga kirish");
        break;
    default:
        console.log("Noto'g'ri tanlov");
}
Tizimga kirish

switch matn (string) bilan ham ishlaydi — bu menyu tanlovlarida qulay. E’tibor bering: switch qat’iy tenglik (===) bilan solishtiradi.

Xulosa

Bu bo’limda switch operatori, case va default, break ning muhimligi (fall-through) va switch bilan if...else orasidagi tanlovni ko’rib chiqdik. Aniq variantli tanlov uchun switch — toza yechim.