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 yang ditentukan 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. panjangnya;
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. panjangnya;
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