Control Flow
1. Percabangan if (Jika...)
Ini adalah bentuk logika paling dasar. Kode di dalam blok if hanya akan dijalankan jika kondisinya bernilai true.
Sintaks Dasar:
if (kondisi) {
// Kode ini jalan jika kondisi BENAR (true)
}Contoh:
let nilai = 80;
// Cek apakah nilai lebih besar atau sama dengan 70
if (nilai >= 70) {
console.log("Selamat! Kamu Lulus.");
}
// Jika nilai di bawah 70, kode di atas akan dilewati begitu saja.2. Percabangan else (Jika Tidak...)
Bagaimana jika kondisinya salah (false)? Kita menggunakan else untuk memberikan rencana cadangan atau alternatif.
Sintaks:
if (kondisi) {
// Jalan jika BENAR
} else {
// Jalan jika SALAH
}Contoh:
let password = "rahasia123";
if (password === "rahasia123") {
console.log("Login Berhasil! Selamat datang.");
} else {
console.log("Password Salah. Coba lagi.");
}3. Percabangan else if (Banyak Kondisi)
Terkadang, hidup tidak sesederhana "Ya" atau "Tidak". Kita mungkin memiliki banyak kemungkinan kondisi. Kita bisa merangkainya menggunakan else if.
Contoh Sistem Nilai (Grading):
let nilaiUjian = 85;
if (nilaiUjian >= 90) {
console.log("Nilai A: Sempurna!");
} else if (nilaiUjian >= 80) {
console.log("Nilai B: Bagus Sekali.");
} else if (nilaiUjian >= 70) {
console.log("Nilai C: Cukup.");
} else {
// Ini jalan jika semua kondisi di atas SALAH (nilai di bawah 70)
console.log("Nilai D: Perlu Belajar Lagi.");
}Penjelasan Alur:
- Program mengecek: Apakah
nilaiUjian >= 90? (85 >= 90 adalah False). Lewati. - Lanjut ke
else ifpertama: ApakahnilaiUjian >= 80? (85 >= 80 adalah True). - Jalankan
console.log("Nilai B..."). - Berhenti. Program tidak akan mengecek kondisi sisa (Nilai C dan D) karena sudah menemukan kondisi yang benar.
Latihan 1:
Di file script.js kamu:
- Buat variabel
jam(isi dengan angka 0-24). - Buat logika:
- Jika jam < 12, tampilkan "Selamat Pagi".
- Jika jam < 18, tampilkan "Selamat Sore".
- Selain itu (else), tampilkan "Selamat Malam".
- Ubah nilai
jamuntuk menguji apakah logikanya benar.
4. Switch Statement
if-else sangat bagus untuk rentang nilai (seperti < atau >). Namun, jika kamu ingin mengecek nilai yang spesifik/pasti, switch adalah pilihan yang lebih rapi dan mudah dibaca.
switch (variabel) {
case "nilai1":
// Lakukan sesuatu...
break; // Penting: Berhenti di sini
case "nilai2":
// Lakukan sesuatu...
break;
default:
// Lakukan ini jika tidak ada case yang cocok (mirip else)
}Contoh Lampu Lalu Lintas:
let warnaLampu = "kuning";
switch (warnaLampu) {
case "merah":
console.log("Berhenti!");
break;
case "kuning":
console.log("Hati-hati, siap berhenti.");
break;
case "hijau":
console.log("Jalan!");
break;
default:
console.log("Lampu rusak atau warna tidak dikenal.");
}Mengapa butuh break?
Kata kunci break memberi tahu JavaScript untuk berhenti mengeksekusi kode di dalam switch block. Tanpa break, program akan terus menjalankan kode di case berikutnya ("bocor") meskipun kondisinya sudah terpenuhi.
Latihan 2:
- Buat variabel
nomorHari(isi angka 1 sampai 7). - Gunakan
switchuntuk mengubah angka menjadi nama hari.- Case 1: "Senin"
- Case 2: "Selasa"
- ...dan seterusnya.
- Default: "Nama hari tidak valid".
- Tampilkan hasilnya.
Tips
- Kapan pakai
if, kapan pakaiswitch?- Gunakan
switchjika kamu membandingkan satu variabel dengan banyak nilai pasti (contoh: status order = 'pending', 'success', 'failed'). - Gunakan
ifjika kondisinya melibatkan logika kompleks atau rentang angka (contoh: umur > 17 && punyaKTP).
- Gunakan
- Hati-hati dengan Kurung Kurawal
{}: Selalu gunakan kurung kurawal pada blokifatauelsemeskipun kodenya hanya satu baris, agar lebih mudah dibaca dan menghindari error saat menambah baris baru nanti.