JavaScript-də switch-case quruluşunda break-in məcburi olmaması

switch-case quruluşunda break əmri məcburi deyil. break olmadıqda, planlaşdırılan case icra edildikdən sonra, onun altındakı bütün case-lər də icra olunacaq.

Gəlin nümunəyə baxaq:

javascriptlet num = 1; // burada rəqəm 1 olsun

switch (num) {
  case 1:
    console.log(1); // bu işləyəcək
  case 2:
    console.log(2); // bu da işləyəcək
  case 3:
    console.log(3); // bu da işləyəcək
}

Dəyişənin dəyərini dəyişək:

javascriptlet num = 2; // burada rəqəm 2 olsun

switch (num) {
  case 1:
    console.log(1);
  case 2:
    console.log(2); // bu işləyəcək
  case 3:
    console.log(3); // bu da işləyəcək
}

Dəyişənin dəyərini dəyişək:

javascriptlet num = 3; // burada rəqəm 3 olsun

switch (num) {
  case 1:
    console.log(1);
  case 2:
    console.log(2);
  case 3:
    console.log(3); // bu işləyəcək
}

Bəzən bu xüsusiyyətdən məsələləri həll edərkən istifadə olunur. Nümunəyə baxın:

javascriptlet num = 1;
let res;

switch (num) {
  case 1:
  case 2:
    res = 'a';
  break;
  case 3:
    res = 'b';
  break;
}

console.log(res);

Lakin, belə bir məsələni if ilə həll etmək daha aydındır:

javascriptlet num = 1;
let res;

if (num == 1 || num == 2) {
  res = 'a';
}

if (num == 3) {
  res = 'b';
}

console.log(res);