Tujuan Belajar
Setelah pelajaran ini, kamu akan bisa:
- Membuat percabangan logika dengan
if,else if, danelse - Menggunakan ternary operator untuk kondisi sederhana
- Menggunakan
switchuntuk banyak kondisi
Materi Singkat
Program yang baik bisa membuat keputusan. "Jika nilai >= 90, tampilkan A. Jika tidak, tampilkan B." Inilah kondisional — salah satu konsep paling penting dalam pemrograman.
Bayangkan kondisional seperti lampu merah:
- Jika merah → berhenti
- Jika tidak, dan kuning → siap-siap
- Jika tidak → jalan
If Statement
if (kondisi) {
// kode yang dijalankan JIKA kondisi true
}Contoh:
const suhu = 35;
if (suhu > 30) {
console.log("Cuaca sangat panas, minum banyak air!");
}If...Else
const nilaiUjian = 65;
if (nilaiUjian >= 70) {
console.log("Selamat, kamu lulus!");
} else {
console.log("Kamu perlu mengulang ujian.");
}If...Else If...Else
Untuk lebih dari dua kemungkinan:
const nilai = 88;
if (nilai >= 90) {
console.log("Nilai A - Luar biasa!");
} else if (nilai >= 80) {
console.log("Nilai B - Bagus!");
} else if (nilai >= 70) {
console.log("Nilai C - Cukup.");
} else if (nilai >= 60) {
console.log("Nilai D - Perlu belajar lebih.");
} else {
console.log("Nilai E - Harus mengulang.");
}JavaScript mengecek kondisi dari atas ke bawah. Begitu menemukan yang true, ia menjalankan bloknya dan melompati sisa kondisi.
Ternary Operator (Kondisi Singkat)
Untuk kondisi sederhana dengan dua pilihan, ternary lebih ringkas:
// Sintaks: kondisi ? jika_true : jika_false
const umur = 18;
const status = umur >= 18 ? "dewasa" : "di bawah umur";
console.log(status); // "dewasa"
// Sama dengan:
let statusPanjang;
if (umur >= 18) {
statusPanjang = "dewasa";
} else {
statusPanjang = "di bawah umur";
}Switch Statement
Lebih bersih untuk banyak kondisi berdasarkan satu nilai:
const hari = "Senin";
switch (hari) {
case "Senin":
case "Selasa":
case "Rabu":
case "Kamis":
case "Jumat":
console.log("Hari kerja");
break;
case "Sabtu":
case "Minggu":
console.log("Akhir pekan!");
break;
default:
console.log("Hari tidak valid");
}Jangan lupa break — tanpanya, eksekusi "jatuh" ke case berikutnya.
Contoh Kode
// Sistem penilaian otomatis
function tentikanNilaiHuruf(nilai) {
if (nilai >= 90) return "A";
else if (nilai >= 80) return "B";
else if (nilai >= 70) return "C";
else if (nilai >= 60) return "D";
else return "E";
}
const nilaiSiswa = [92, 78, 65, 85, 55];
for (const nilai of nilaiSiswa) {
const huruf = tentikanNilaiHuruf(nilai);
const lulus = nilai >= 70 ? "Lulus" : "Tidak Lulus";
console.log(`Nilai: ${nilai} → ${huruf} (${lulus})`);
}
// Sistem kategorisasi BMI
const berat = 70; // kg
const tinggi = 1.72; // meter
const bmi = berat / (tinggi * tinggi);
const bmiBulat = Math.round(bmi * 10) / 10;
let kategori;
if (bmi < 18.5) {
kategori = "Berat badan kurang";
} else if (bmi < 25) {
kategori = "Normal";
} else if (bmi < 30) {
kategori = "Kelebihan berat badan";
} else {
kategori = "Obesitas";
}
console.log(`BMI: ${bmiBulat} — ${kategori}`);Tugas Kecil
Buat program "Penentu Tiket Bioskop":
- Buat variabel
umur(coba dengan berbagai nilai) - Buat variabel
jenisFilmdengan nilai"umum","dewasa", atau"anak" - Buat kondisi:
- Jika
jenisFilm === "anak": harga Rp 25.000 - Jika
jenisFilm === "umum":- Jika
umur < 12: harga Rp 30.000 (anak-anak) - Jika
umur < 60: harga Rp 50.000 (dewasa) - Jika >= 60: harga Rp 35.000 (lansia)
- Jika
- Jika
jenisFilm === "dewasa":- Jika
umur < 18: "Maaf, film ini 17+" — tidak bisa beli tiket - Jika >= 18: harga Rp 60.000
- Jika
- Jika
- Cetak hasil ke console dengan format yang informatif