Pernyataan Switch Case Pada JavaScript

Pada tutorial ini, Anda akan mempelajari cara menggunakan pernyataan switch pada JavaScript untuk menjalankan blok kode berdasarkan beberapa kondisi.

Pengenalan tentang pernyataan switch case pada JavaScript

Pernyataan switch mengevaluasi suatu ekspresi, membandingkan hasilnya dengan nilai-nilai case, dan menjalankan pernyataan yang terkait dengan nilai case yang cocok.

Berikut adalah sintaks dari pernyataan switch:

switch (ekspresi) {
    case nilai1:
        pernyataan1;
        break;
    case nilai2:
        pernyataan2;
        break;
    case nilai3:
        pernyataan3;
        break;
    default:
        pernyataan;
}

Bagaimana cara kerjanya?

  • Pertama, evaluasi ekspresi di dalam tanda kurung setelah kata kunci switch.
  • Kedua, bandingkan hasil ekspresi dengan nilai1, nilai2, … pada cabang case dari atas ke bawah. Pernyataan switch menggunakan perbandingan ketat (===).
  • Ketiga, jalankan pernyataan di cabang case di mana hasil ekspresi sama dengan nilai yang mengikuti kata kunci case. Pernyataan break keluar dari pernyataan switch. Jika Anda melewati pernyataan break, eksekusi kode akan melanjut ke cabang case asli ke cabang berikutnya. Jika hasil ekspresi tidak sama secara ketat dengan nilai manapun, pernyataan switch akan menjalankan pernyataan di cabang default. Pernyataan switch akan berhenti membandingkan hasil ekspresi dengan nilai-nilai case yang tersisa begitu menemukan kecocokan.

Pernyataan switch mirip dengan pernyataan if…else…if. Namun, memiliki sintaks yang lebih mudah dibaca.

Diagram alir berikut menggambarkan pernyataan switch:

[image]

Secara praktis, Anda sering menggunakan pernyataan switch untuk menggantikan pernyataan if…else…if yang kompleks agar kode lebih mudah dibaca.

Secara teknis, pernyataan switch setara dengan pernyataan if…else…if berikut:

if (ekspresi === nilai1) {
  pernyataan1;
} else if (ekspresi === nilai2) {
  pernyataan2;
} else if (ekspresi === nilai3) {
  pernyataan3;
} else {
  pernyataan;
}

Contoh-contoh kasus JavaScript switch case

Mari kita lihat beberapa contoh penggunaan pernyataan switch pada JavaScript.

1. Menggunakan pernyataan switch JavaScript untuk mendapatkan hari dalam seminggu

Contoh berikut menggunakan pernyataan switch untuk mendapatkan hari dalam seminggu berdasarkan nomor hari:

let day = 3;
let dayName;

switch (day) {
  case 1:
    dayName = 'Minggu';
    break;
  case 2:
    dayName = 'Senin';
    break;
  case 3:
    dayName = 'Selasa';
    break;
  case 4:
    dayName = 'Rabu';
    break;
  case 5:
    dayName = 'Kamis';
    break;
  case 6:
    dayName = 'Jumat';
    break;
  case 7:
    dayName = 'Sabtu';
    break;
  default:
    dayName = 'Hari tidak valid';
}

console.log(dayName); // Selasa

Output:

Selasa

Bagaimana cara kerjanya?

  • Pertama, deklarasikan variabel day yang menyimpan nomor hari dan variabel dayName yang menyimpan nama hari.
  • Kedua, dapatkan hari dalam seminggu berdasarkan nomor hari menggunakan pernyataan switch. Jika hari adalah 1, hari itu adalah Minggu. Jika hari adalah 2, hari itu adalah Senin, dan seterusnya.
  • Ketiga, tampilkan nama hari ke konsol.

2. Menggunakan pernyataan switch JavaScript untuk mendapatkan jumlah hari berdasarkan bulan

Contoh berikut menggunakan pernyataan switch untuk mendapatkan jumlah hari dalam suatu bulan:

let year = 2016;
let month = 2;
let dayCount;

switch (month) {
  case 1:
  case 3:
  case 5:
  case 7:
  case 8:
  case 10:
  case 12:
    dayCount = 31;
    break;
  case 4:
  case 6:
  case 9:
  case 11:
    dayCount = 30;
    break;
  case 2:
    // tahun kabisat
    if ((year % 4 == 0 && !(year % 100 == 0)) || year % 400 == 0) {
      dayCount = 29;
    } else {
      dayCount = 28;
    }
    break;
  default:
    dayCount = -1; // bulan tidak valid
}

console.log(dayCount); // 29

Pada contoh ini, terdapat empat kasus:

  • Jika bulan adalah 1, 3, 5, 7, 8, 10, atau 12, jumlah hari dalam sebulan adalah 31.
  • Jika bulan adalah 4, 6, 9, atau 11, jumlah hari dalam sebulan adalah 30.
  • Jika bulan adalah 2, dan tahun bukan tahun kabisat, jumlah hari adalah 28. Jika tahun adalah tahun kabisat, jumlah hari adalah 29.
  • Jika bulan tidak berada dalam rentang yang valid (1-12), cabang default dijalankan dan mengatur variabel dayCount menjadi -1, yang menunjukkan bulan tidak valid.

Ringkasan

  • Pernyataan switch mengevaluasi suatu ekspresi, membandingkan hasilnya dengan nilai-nilai case, dan menjalankan pernyataan yang terkait dengan case yang cocok.
  • Gunakan pernyataan switch daripada pernyataan if…else…if yang kompleks untuk membuat kode lebih mudah dibaca.
  • Pernyataan switch menggunakan perbandingan ketat (===) untuk membandingkan ekspresi dengan nilai-nilai case.
Share jika bermanfaat:
Abdan Zam Zam Ramadhan
Abdan Zam Zam Ramadhan

Seorang penggiat teknologi yang menfokuskan diri pada pengembangan aplikasi (web & android), DevOps, Data Tech, Natural Language Processing (NLP) dan ChatBot berbasis NLP. Sedang mendalami di Node.js dan ekosistemnya. Aktif sebagai konstributor library JS (open source) di NPM. Menulis berbagai artikel tips dan tutorial pemrograman di LampungDev.com.

Articles: 32