Percabangan Javascript
Percabangan if…else
struktur kontrol dalam pemrograman yang digunakan untuk membuat keputusan berdasarkan beberapa kondisi. Ini memungkinkan program untuk memeriksa beberapa kondisi secara berurutan, dan menjalankan blok kode yang sesuai dengan kondisi yang pertama kali terpenuhi.
Struktur Dasar:
if (kondisi1) {
// Blok kode yang dijalankan jika kondisi1 bernilai true
} else if (kondisi2) {
// Blok kode yang dijalankan jika kondisi1 bernilai false dan kondisi2 bernilai true
} else if (kondisi3) {
// Blok kode yang dijalankan jika kondisi1 dan kondisi2 bernilai false, dan kondisi3 bernilai true
} else {
// Blok kode yang dijalankan jika semua kondisi sebelumnya bernilai false
}
Cara Kerja:
if
: Memeriksa kondisi pertama. Jika kondisi ini bernilaitrue
, maka blok kode di dalamnya akan dieksekusi, dan program akan melewati sisa pernyataanelse if
danelse
.else if
: Jika kondisi pertama bernilaifalse
, program akan memeriksa kondisi berikutnya (kondisi2). Jika kondisi ini bernilaitrue
, maka blok kode di dalamelse if
akan dieksekusi.else
: Jika semua kondisi di atas bernilaifalse
, maka blok kode di dalamelse
akan dijalankan.
Contoh Penggunaan:
Bayangkan kamu sedang membuat aplikasi yang dapat menampilkan diskon berdasarkan total pembelian pelanggan. Apabila total pembelian lebih dari Rp1.000.000, pelanggan akan mendapatkan potongan sebesar 20%. Untuk pembelian lebih dari Rp500.000, pelanggan akan mendapatkan potongan sebesar 10%, sementara pembelian di bawah itu tidak mendapatkan potongan.
let totalPembelian = 500000; // Total dalam rupiah
if (totalPembelian > 1000000) {
console.log("Anda mendapat diskon 20%.");
} else if (totalPembelian > 500000) {
console.log("Anda mendapat diskon 10%.");
} else {
console.log("Tidak ada diskon yang diberikan.");
}
Percabangan switch
…case
struktur kontrol dalam pemrograman yang digunakan untuk memilih salah satu dari beberapa blok kode untuk dieksekusi, berdasarkan nilai dari sebuah ekspresi.
Sintaks Dasar switch case:javascriptCopy codeswitch (ekspresi) {
case nilai1:
// Blok kode yang dijalankan jika ekspresi sama dengan nilai1
break;
case nilai2:
// Blok kode yang dijalankan jika ekspresi sama dengan nilai2
break;
// Tambahkan lebih banyak case sesuai kebutuhan
default:
// Blok kode yang dijalankan jika tidak ada case yang cocok
}
Penjelasan:
switch
: Mengambil sebuah ekspresi yang akan dievaluasi.case
: Menguji apakah ekspresi tersebut cocok dengan nilai yang ditentukan. Jika cocok, blok kode yang terkait dengancase
tersebut akan dieksekusi.break
: Menghentikan eksekusi dariswitch
setelah blok kode dijalankan. Tanpabreak
, program akan terus mengeksekusi blok kode padacase
berikutnya, yang dikenal sebagai “fall-through.”default
: Opsi yang dijalankan jika tidak adacase
yang cocok. Ini bersifat opsional.
Contoh Penggunaan:
Misalkan kamu sedang membuat sebuah aplikasi belanja online, dimana role user terbagi menjadi beberapa yaitu manager, admin, customer, hingga guest. Kamu perlu menampilkan role yang sesuai berdasarkan jenis pengguna tersebut. Meskipun kamu bisa menggunakan pernyataan else-if
untuk melakukan ini, akan lebih singkat dan tepat jika menggunakan switch
untuk kasus ini.
let userRole = 'GUEST';
switch (userRole) {
case 'ADMIN':
console.log('This role is admin');
break;
case 'MANAGER':
console.log('This role is manager');
break;
case 'CUSTOMER':
console.log('This role is customer');
break;
case 'GUEST':
console.log('This role is guest');
break;
default:
console.log('This role is none');
break;
}