Pada contoh berikut, kode dalam loop akan berjalan berulang-ulang, selama variabel (i) kurang dari 10
Jika Anda lupa menambah variabel yang digunakan dalam kondisi tersebut, perulangan tidak akan pernah berakhir. Ini akan merusak browser Anda
Do While Loop
Loop do while adalah varian dari while loop. Loop ini akan mengeksekusi blok kode satu kali, sebelum memeriksa apakah kondisinya benar, kemudian akan mengulang loop selama kondisinya benar
Sintaksis
melakukan {
// blok kode yang akan dieksekusi
}
sementara (kondisi);
Contoh
Contoh di bawah ini menggunakan do while loop. Loop akan selalu dieksekusi setidaknya sekali, meskipun kondisi salah, karena blok kode dieksekusi sebelum kondisi diuji
Jangan lupa untuk menambah variabel yang digunakan dalam kondisi tersebut, jika tidak, perulangan tidak akan pernah berakhir
Membandingkan Untuk dan Sementara
Jika Anda telah membaca bab sebelumnya, tentang perulangan for, Anda akan menemukan bahwa perulangan while hampir sama dengan perulangan for, dengan pernyataan 1 dan pernyataan 3 dihilangkan
Loop berguna, jika Anda ingin menjalankan kode yang sama berulang kali, setiap kali dengan nilai yang berbeda
Seringkali ini terjadi ketika bekerja dengan array
Alih-alih menulis
teks += mobil[0] + "
";
teks += mobil[1] + "
";
teks += mobil[2] + "
";
teks += mobil[3] + "
";
teks += mobil[4] + "
";
teks += mobil[5] + "
";
Kamu bisa menulis
untuk (misalkan i = 0; i < mobil. panjangnya;
teks += mobil[i] + "
";
}
Berbagai Jenis Loop
JavaScript mendukung berbagai jenis loop
- for - loop melalui blok kode beberapa kali
- for/in - loop melalui properti objek
- for/of - mengulang nilai objek yang dapat diubah
- while - loop melalui blok kode saat kondisi tertentu benar
- do/while_ - juga mengulang blok kode saat kondisi tertentu benar
Untuk Loop
Pernyataan for_ membuat loop dengan 3 ekspresi opsional
for (ekspresi 1; ekspresi 2; ekspresi 3) {
// blok kode yang akan dieksekusi
}
Ekspresi 1 dieksekusi (satu kali) sebelum eksekusi blok kode
Ekspresi 2 mendefinisikan kondisi untuk mengeksekusi blok kode
Ekspresi 3 dijalankan (setiap kali) setelah blok kode dieksekusi
Contoh
for (biarkan i = 0; i < 5; i++) {
teks += "Nomornya adalah " + i + "
";
}
Dari contoh di atas, Anda bisa membaca
Ekspresi 1 menyetel variabel sebelum perulangan dimulai (misalkan i = 0)
Ekspresi 2 mendefinisikan kondisi untuk menjalankan loop (saya harus kurang dari 5)
Ekspresi 3 meningkatkan nilai (i++) setiap kali blok kode dalam loop telah dieksekusi
Ekspresi 1
Biasanya Anda akan menggunakan ekspresi 1 untuk menginisialisasi variabel yang digunakan dalam loop (misalkan i = 0)
Ini tidak selalu terjadi. JavaScript tidak peduli. Ekspresi 1 adalah opsional
Anda dapat memulai banyak nilai dalam ekspresi 1 (dipisahkan dengan koma)
Contoh
untuk (misalkan i = 0, len = mobil. panjang, teks = "";
teks += mobil[i] + "
";
}
Dan Anda dapat menghilangkan ekspresi 1 (seperti ketika nilai Anda ditetapkan sebelum loop dimulai)
Contoh
misalkan i = 2;
biarkan len = mobil. panjang;
biarkan teks = "";
untuk (; i < len; i++) {
teks += mobil[i] + "
";
}
Ekspresi 2
Seringkali ekspresi 2 digunakan untuk mengevaluasi kondisi variabel awal
Ini tidak selalu terjadi. JavaScript tidak peduli. Ekspresi 2 juga opsional
Jika ekspresi 2 mengembalikan true, pengulangan akan dimulai lagi. Jika mengembalikan false, loop akan berakhir
Jika Anda menghilangkan ekspresi 2, Anda harus memberikan jeda di dalam loop. Jika tidak, loop tidak akan pernah berakhir. Ini akan merusak browser Anda. Baca tentang istirahat di bab selanjutnya dari tutorial ini
Ekspresi 3
Seringkali ekspresi 3 menambah nilai variabel awal
Ini tidak selalu terjadi. JavaScript tidak peduli. Ekspresi 3 adalah opsional
Ekspresi 3 dapat melakukan apa saja seperti kenaikan negatif (i--), kenaikan positif (i = i + 15), atau yang lainnya
Ekspresi 3 juga dapat dihilangkan (seperti saat Anda menaikkan nilai Anda di dalam loop)
Contoh
biarkan saya = 0;
biarkan len = mobil. panjang;
biarkan teks = "";
untuk (; i < len; ) {
teks += mobil[i] + "
";
saya++;
}
Lingkup Lingkaran
Menggunakan var_ dalam satu lingkaran
Contoh
var i = 5;
untuk (var i = 0; i < 10; i++) {
// beberapa kode
}
// Ini aku 10
Cobalah sendiri "Menggunakan let_ dalam satu lingkaran
Contoh
misalkan i = 5;
for (biarkan i = 0; i < 10; i++) {
// beberapa kode
}
// Ini aku 5
Cobalah sendiri "Pada contoh pertama, menggunakan var, variabel yang dideklarasikan dalam loop mendeklarasikan ulang variabel di luar loop
Dalam contoh kedua, menggunakan let_, variabel yang dideklarasikan dalam loop tidak mendeklarasikan ulang variabel di luar loop
Ketika let_ digunakan untuk mendeklarasikan variabel i dalam sebuah loop, variabel i hanya akan terlihat di dalam loop