15 Ekim 2023 • 10 dakikalık okuma
JavaScript ve diğer programlama dillerinde döngüler; bir koşula göre, bir işlemi birden fazla defa yapmak için kullanılır. JavaScript dilinde de bir çok farklı döngü yazımı mevcuttur.
En temel döngü for döngüsüdür. Bu döngüde önce işlemin kaç defa yapılacağını tutan sayaç tanımlanır, ikinci adımda koşul yazılır, son adımda sayaç değeri arttırılır. Örneğin; bir yazı for döngüsü ile 10 defa yazdırılabilir;
for(var i = 0; i < 10; i++) {
console.log("Merhaba Dünya!", i);
}
// SONUÇ:
// Merhaba Dünya! 0
// Merhaba Dünya! 1
// Merhaba Dünya! 2
// Merhaba Dünya! 3
// Merhaba Dünya! 4
// Merhaba Dünya! 5
// Merhaba Dünya! 6
// Merhaba Dünya! 7
// Merhaba Dünya! 8
// Merhaba Dünya! 9
Örneğin; bir dizinin tüm öğeleri yazdırılabilir;
var cities = ["Kırklareli", "Kırşehir", "Kocaeli", "Konya", "Kütahya"];
for(var i = 0; i < cities.length; i++) {
console.log(cities[i]);
}
// SONUÇ:
// Kırklareli
// Kırşehir
// Kocaeli
// Konya
// Kütahya
While döngüsü, for döngüsü ile aynı mantıkta çalışır, farkı sayaç değişkeni while dışında tanımlanır ve döngü içinde arttırılır. Örneğin;
var cities = ["Kırklareli", "Kırşehir", "Kocaeli", "Konya", "Kütahya"];
var i = 0;
while(i < cities.length) {
console.log(cities[i]);
i++;
}
// SONUÇ:
// Kırklareli
// Kırşehir
// Kocaeli
// Konya
// Kütahya
Do While döngüsü, while döngüsüne benzer tek farkı, koşul döngü içine yazılan kod çalıştıktan sonra kontrol edilir. Böylece döngü içine yazılan kod en az bir kere çalışır. Örneğin;
var cities = ["Kırklareli", "Kırşehir", "Kocaeli", "Konya", "Kütahya"];
var i = 0;
do {
console.log(cities[i]);
i++;
}
while(i < 1)
// SONUÇ:
// Kırklareli
Örneğin tüm dizi öğelerini yazdırmak için;
var cities = ["Kırklareli", "Kırşehir", "Kocaeli", "Konya", "Kütahya"];
var i = 0;
do {
console.log(cities[i]);
i++;
}
while(i < cities.length)
// SONUÇ:
// Kırklareli
// Kırşehir
// Kocaeli
// Konya
// Kütahya
For of döngüsü dizinin tüm öğelerine erişmek için kullanılır;
var cities = ["Kırklareli", "Kırşehir", "Kocaeli", "Konya", "Kütahya"];
for(var item of cities) {
console.log(item);
}
// SONUÇ:
// Kırklareli
// Kırşehir
// Kocaeli
// Konya
// Kütahya
Map örneği;
var map = new Map();
map.set(39, "Kırklareli");
map.set(40, "Kırşehir");
map.set(41, "Kocaeli");
for (var item of map) {
console.log(item);
}
// SONUÇ:
// [39, 'Kırklareli']
// [40, 'Kırşehir']
// [41, 'Kocaeli']
Set örneği;
var set = new Set();
set.add(78);
set.add("Karabük");
set.add(252.058)
for (var item of set) {
console.log(item);
}
// SONUÇ:
// 78
// Karabük
// 252.058
For in döngüsü nesnenin tüm alanlarına ve değerlerine erişmek için kullanılır;
var city = {
code: "39",
name: "Kırklareli",
population: 369.347
};
for (var key in data) {
console.log(key, city[key]);
}
// SONUÇ:
// code 39
// name Kırklareli
// population 369.347
Array.prototype.forEach() yöntemi ile de dizinin öğelerine erişilebilir;
var cities = ["Kırklareli", "Kırşehir", "Kocaeli", "Konya", "Kütahya"];
cities.forEach(function(item, index, array) {
console.log(index, item);
});
// SONUÇ:
// 0 Kırklareli
// 1 Kırşehir
// 2 Kocaeli
// 3 Konya
// 4 Kütahya
Array.prototype.map() metodu dizinin öğelerinde işlem yapıp sonucu farklı bir dizi olarak döndürür. Map metodu ile dizinin tüm öğelerine erişilebilir;
var cities = ["Kırklareli", "Kırşehir", "Kocaeli", "Konya", "Kütahya"];
cities.map(function (item, index, array) {
console.log(index, item);
});
// SONUÇ:
// 0 Kırklareli
// 1 Kırşehir
// 2 Kocaeli
// 3 Konya
// 4 Kütahya
jQuery.each() döngüsü nesnenin tüm alanlarına ve değerlerine erişmek için kullanılır. Bu yöntemin kullanılabilmesi için jQuery kütüphanesinin sayfaya eklenmesi gerekmektedir.
var cities = ["Kırklareli", "Kırşehir", "Kocaeli", "Konya", "Kütahya"];
$.each(cities, function(index, value) {
console.log(index, value);
});
// SONUÇ:
// 0 Kırklareli
// 1 Kırşehir
// 2 Kocaeli
// 3 Konya
// 4 Kütahya