menu

Bekerja dengan Flag di JavaScript

Sekarang kita akan belajar bekerja dengan flag. Flag adalah variabel khusus yang hanya dapat menerima dua nilai: true dan false. Dengan menggunakan flag, kita dapat menyelesaikan masalah yang memeriksa ketiadaan sesuatu: contohnya, kita dapat memeriksa apakah dalam sebuah array tidak ada elemen dengan nilai tertentu. Mari kita mulai.

Mari kita selesaikan masalah berikut: diberikan sebuah array berisi angka, periksa apakah di dalamnya terdapat elemen dengan nilai 3 atau tidak. Jika ada - tampilkan '+++', jika tidak - tampilkan '---'.

Pertama-tama, mari kita coba menampilkan '+++'. Untuk melakukannya, kita akan ulangi semua elemen array kita dan dengan pernyataan if kita akan bertanya - apakah elemen saat ini sama dengan nilai 3. Jika sama - tampilkan '+++':

let arr = [1, 2, 3, 4, 5]; for (let elem of arr) { if (elem == 3) { console.log('+++'); } }

Tapi solusi kita tidak terlalu baik: karena jika dalam array tidak hanya ada satu nilai 3, tapi beberapa, maka '+++' akan ditampilkan beberapa kali. Mari kita ubah array kita (buat dua elemen dengan nilai 3) dan buktikan hal ini:

let arr = [1, 2, 3, 4, 3, 5]; for (let elem of arr) { if (elem == 3) { console.log('+++'); // akan menampilkan beberapa kali } }

Mari kita perbaiki masalahnya: hentikan perulangan dengan break, jika elemen sudah ditemukan:

let arr = [1, 2, 3, 4, 3, 5]; for (let elem of arr) { if (elem == 3) { console.log('+++'); break; // hentikan perulangan } }

Sekarang mari kita coba membuat agar, jika dalam array sama sekali tidak ada elemen dengan nilai 3, yang ditampilkan adalah '---'. Kesalahan umum adalah menambahkan else ke pernyataan if kita - dalam hal ini '---' akan ditampilkan untuk semua elemen yang bukan 3:

let arr = [1, 2, 3, 4, 5]; for (let elem of arr) { if (elem == 3) { console.log('+++'); // akan tampil pada elemen 3 } else { console.log('---'); // akan tampil pada elemen 1, 2, 4, 5 } }

Jadi, ide untuk menambahkan else adalah ide yang buruk, tidak bekerja. Untuk menyelesaikan masalah semacam ini (masalah seperti ini cukup sering ditemui) digunakan yang disebut flag.

Seperti yang telah disebutkan di atas, flag adalah variabel yang dapat menerima dua nilai: true atau false.

Jadi, mari kita buat variabel flag dengan makna berikut: jika nilainya true, maka dalam array ada elemen 3, dan jika false, maka tidak ada elemen tersebut.

Awalnya, kita set variabel flag ke nilai false - artinya kita menganggap bahwa elemen 3 tidak ada dalam array:

let arr = [1, 2, 3, 4, 5]; let flag = false; // menganggap elemen 3 tidak ada dalam array

Kemudian jalankan perulangan dengan pernyataan if seperti yang kita lakukan sebelumnya. Jika perulangan menemukan bahwa dalam array ada elemen 3 - maka set variabel flag ke nilai true dan keluar dari perulangan dengan break:

let arr = [1, 2, 3, 4, 5]; let flag = false; // menganggap elemen 3 tidak ada dalam array for (let elem of arr) { if (elem == 3) { flag = true; // elemen ada - ubah nilai variabel flag break; // keluar dari perulangan } }

Jawaban atas pertanyaan, apakah dalam array ada 3 atau tidak, hanya bisa kita berikan setelah perulangan. Dan jawaban itu sudah kita miliki: setelah perulangan variabel flag bisa tetap false atau bisa berubah nilainya menjadi true, jika perulangan mendeteksi adanya 3 dalam array:

let arr = [1, 2, 3, 4, 5]; let flag = false; for (let elem of arr) { if (elem == 3) { flag = true; break; } } // di sini variabel flag sama dengan true atau false

Sekarang setelah perulangan, kita dapat membuat pernyataan if, yang akan melihat variabel flag dan menampilkan '+++' atau '---' ke layar:

let arr = [1, 2, 3, 4, 5]; let flag = false; for (let elem of arr) { if (elem == 3) { flag = true; break; } } if (flag === true) { console.log('+++'); } else { console.log('---'); }

Diberikan array:

let arr = ['a', 'b', 'c', 'd', 'e'];

Periksa apakah dalam array ini ada elemen 'c'. Jika ada - tampilkan '+++', dan jika tidak - tampilkan '---'.

Tulis kode yang akan memeriksa apakah suatu bilangan adalah bilangan prima atau bukan. Bilangan prima hanya habis dibagi oleh satu dan oleh dirinya sendiri, dan tidak habis dibagi oleh bilangan lainnya.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak