September 17, 2026
Cara Menggunakan Switch Statement di JavaScript.
Kapan sebaiknya memakai switch statement dibanding if-else berlapis, lengkap dengan aturan fall-through dan contoh kasus modern.
switch adalah alternatif untuk if...else if berlapis-lapis, terutama saat mengecek satu variabel terhadap banyak kemungkinan nilai tetap.
Struktur Dasar
const hari = "Selasa";
switch (hari) {
case "Senin":
console.log("Awal minggu");
break;
case "Selasa":
case "Rabu":
case "Kamis":
console.log("Hari kerja biasa");
break;
case "Jumat":
console.log("Menuju akhir pekan");
break;
default:
console.log("Akhir pekan");
}
Perhatikan case "Selasa": dan case "Rabu": yang sengaja tidak diberi break di antaranya — ini disebut fall-through, memungkinkan beberapa case berbagi hasil yang sama.
Pentingnya break
Tanpa break, eksekusi akan lanjut ke case berikutnya meski kondisinya tidak cocok lagi.
const status = "aktif";
switch (status) {
case "aktif":
console.log("Sedang berjalan");
case "selesai": // tanpa break, ini ikut tereksekusi!
console.log("Sudah selesai");
break;
}
// Output:
// Sedang berjalan
// Sudah selesai
switch dengan Perbandingan Ketat
switch membandingkan nilai memakai ===, jadi tipe data harus sama persis.
const kode = "1";
switch (kode) {
case 1:
console.log("Angka satu");
break;
case "1":
console.log("String satu"); // ini yang tereksekusi
break;
}
switch Tanpa Ekspresi (Pola Modern)
Trik yang cukup umum dipakai adalah switch (true) untuk mengecek beberapa kondisi rentang nilai.
const nilai = 82;
switch (true) {
case nilai >= 90:
console.log("A");
break;
case nilai >= 75:
console.log("B");
break;
default:
console.log("C");
}
Kapan Memilih switch dibanding if-else
switch lebih terbaca saat mengecek satu variabel terhadap banyak nilai spesifik. Namun untuk kondisi dengan banyak variabel berbeda atau ekspresi logika kompleks, if...else if atau objek pemetaan (lookup object) biasanya lebih cocok dibanding memaksakan switch.
Kesimpulan
switch membuat kode lebih rapi ketika mengecek satu nilai terhadap banyak kemungkinan tetap, asalkan tidak lupa menambahkan break di tiap case yang seharusnya berhenti. Untuk kasus yang lebih kompleks, pertimbangkan objek pemetaan atau if...else sebagai alternatif yang lebih fleksibel.

Hey! I’m Fanny, the software engineer tending to this digital garden. You can read more about me, or subscribe by email.