Instruksi continue dalam JavaScript
Ada juga instruksi continue,
yang memulai iterasi baru dari loop. Instruksi ini
kadang-kadang bisa berguna untuk
menyederhanakan kode, meskipun hampir selalu tugas
dapat diselesaikan tanpa itu. Mari kita lihat
pada contoh praktis.
Misalkan kita diberikan array berisi angka. Mari
kita ulangi dengan loop dan angka-angka yang habis dibagi
2, kita pangkatkan dua dan tampilkan
di konsol, dan angka-angka yang habis dibagi 3,
kita pangkatkan tiga dan tampilkan di konsol. Berikut adalah solusi
dari tugas yang dijelaskan:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
for (let elem of arr) {
let result;
if (elem % 2 === 0) {
result = elem * elem;
console.log(result);
} else if (elem % 3 === 0) {
result = elem * elem * elem;
console.log(result);
}
}
Seperti yang Anda lihat, baris console.log(result)
diulang dua kali. Mari kita keluarkan
dari if, seperti ini:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
for (let elem of arr) {
let result;
if (elem % 2 === 0) {
result = elem * elem;
} else if (elem % 3 === 0) {
result = elem * elem * elem;
}
console.log(result); // menampilkan output di luar kondisi
}
Sekarang, script kita bekerja sedikit
berbeda: hasilnya, untuk elemen biasa,
yang tidak diproses melalui if kita akan
menjalankan output variabel result
ke konsol, yang menurut kondisi tugas kita
tidak kita perlukan.
Mari perbaiki masalahnya dengan menambahkan ke if kita
kondisi else lagi, yang akan terpicu
untuk elemen yang tidak habis dibagi 2 dan
3, dan panggil instruksi continue di sana,
yang akan segera melemparkan kita
ke iterasi loop baru:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
for (let elem of arr) {
let result;
if (elem % 2 == 0) {
result = elem * elem;
} else if (elem % 3 == 0) {
result = elem * elem * elem;
} else {
continue; // beralih ke iterasi loop baru
}
console.log(result); // akan dieksekusi jika habis dibagi 2 atau 3
}
Tulis sebuah loop yang hanya akan menampilkan
bilangan genap dari 1 hingga 100,
melewatkan bilangan ganjil dengan menggunakan continue.