javaScript while döngüsü

Bir program yazarken, tekrar tekrar bir eylem gerçekleştirmeniz gereken bir durumla karşılaşabilirsiniz. Bu gibi durumlarda, satır sayısını azaltmak için döngü ifadeleri yazmanız gerekir.

JavaScript, programlama baskısını azaltmak için gerekli tüm döngüleri destekler.

While Döngüsü


Bir şarta bağlı olarak bazı işlemlerin tekrar etmesini istiyorsak while döngüsünü kullanabiliriz. While döngüsünün ilk satırında bir şart belirtilir. Bu şart sağlandığı sürece yapılmasını istediğimiz işlemleri döngünün içine yazarız. Şart sağlanamadığı zaman döngü sona erer.

While döngüsünün koşul olayı if ifadesi ile aynı diyebiliriz. İçerisine yazacağımız koşul doğru olduğunda çalıştıran ,if ifadesinde olduğu gibi while'de aynı şeyi yapar.

while ifadesinin if ifadesinden farkı döngü olduğu için koşul doğru olduğu sürece tekrarlar. Kullanımı şu şekildedir.

Akış Şeması


javascript while döngüsü
while (koşul) {
 
   // koşul sağlanırsa çalışacak kodlar
    
}

While döngüsü ile bir örnek yapalım:

var sayac = 1;
  
while (sayac <= 5){
 
 console.log ("sayımız....:" $sayac) 
  
sayac++;
  
}

While döngüsünde sonsuz döngüye girmek çok kolay, bu yüzden kodları yazarken biraz dikkatli olmak lazım. Eğer koşul her zaman doğru olacak şekilde olursa while döngüsü hiç durmadan döner.

var sayi = 5;
 
while(sayi == 5) {
 
 console.log('sayi değişkeni 5 olduğu sürece bu yazı hep yazılacak');
 
}

Yukarıdaki örnek sonsuz döngüye girer, yani hatalıdır. Koşul içine sayi değişkeni 5'e eşit olduğu sürece kod bloğunu ard arda çalıştır dedik. Döngüden önce sayi değişkenine 5 değerini verdiğimiz için ve değerini hiç değiştirmediğimiz için döngü sonuza kadar döner.

Peki nasıl sınırlı ve kontrollü bir döngü yapacağız? Bu sorunun cevabıda gayet basit. Eğer döngü boyunca koşula yazdığımız değerlerin değişmesini sağlarsak döngüde belli bir dönüşten sonra durur. Bunun için bir sayaç yapılırsa sorun giderilir. Yukarda ki hatalı örneğ'i düzeltelim.

var sayi = 1;
 
while(sayi <= 5) {
 
 alert('MERHABA');
  
 sayi++;// sayac İfadesini önemlidir unutmayın  
  
}

1'den 10'a kadar sayıları toplayalım.

var sayi = 1,
sonuc =1;

while(sayi < 11){
  sonuc += sayi;
  sayi++;
}
alert("sonuc..:"+sonuc);

Beş sayısının faktoriyelini bulalım.

var x = 1;
var sonuc = 1;

while (x <= 5){

 sonuc *= x;
 x++;
}
alert(sonuc); //120

Örnek: HTML başlık etiketini yazdıralım

var i = 1;

var x = document.getElementById("test"); 

while (i < 7){

x.insertAdjacentHTML("beforeBegin", 

`${i}. Başlığımız `);  
i++;
  
}

Örnek: Dizi içindeki elemanları ekrana yazdıralım:

var meyve = ["Muz", "Portakal", "Elma", "Kiraz","Şeftali"];
 
var i = 0;  
 
while (i < meyve.length) {
 
   var a = meyve[$i];

    console.log(a);
   
    $i++;
}

do While Döngüsü


do-while döngüsü, while döngüsüne çok benzer; farkı, doğrulama ifadesinin her Döngünün başında değil sonunda değerlendiriliyor olmasıdır.

while döngüsü ile temel farklılık, do-while döngüsü kullanıldığında koşul geçerli olsun ya da olmasın en az 1 kere çalışır. (ifadenin doğruluğuna yalnızca döngünün sonunda bakılır); halbuki while döngüsünde, ifadenin doğruluğuna her döngünün başında bakılmakta ve ifadenin sonucu doğru değilse döngü hiç başlatılmadan sonlandırılmaktadır. Kullanımı şu şekildedir.


javascript while döngüsü

do
{
   döngü içerisinde yapılacak işlemler;
}
while(koşul);
do while döngüsünde while döngüsünden farklı olarak while(koşul) satırından sonra noktalı virgül kullanıldığına dikkat ediniz.
var sayi = 10;
  
do
{
   console.log('Merhaba');
}
while ( sayi < 5 );

Koşul sağlanmadığı için kodlar koşula kadar bir kez çalıştığı için consola 1 kez "Merhaba" yazar.

Örnek: 1'den 10'a kadar sayıları ekrana yazdıralım.

var i = 1;
  
do
{
   console.log(i);
 //1 2 3 4 5 6 7 8 9 10   
   i++;
}
while (i < 11);

Örnek: 10'dan 1'e kadar sayıları büyükten küçüğe sıralayalım.

var i = 10;
  
do
{
   console.log(i);
 // 10 9 8 7 6 5 4 3 2 1   
   i--;
}
 
while (i >= 1);

Örnek:1 ile 100 arasında rastgale 50 olana kadar sayı üretelim ve kaç defada 50 sayısını bulduğunu ekrana yazalım.

var i=0;
   
   do{
	
   var x=Math.floor(Math.random() * Math.floor(100));
	  
	 i++;
	   
	 }while(x!=50);
	 
   console.log("kaç tahminde buldun..:",i);

Yukarıdaki örnekte bilgisayar rastgele sayı üreterek sonucu bulduğu için her denemede tahmin sonuçları farklı çıkacak.

Lütfen konu haricinde soru sormayın cevaplanmayacaktır. Yorumunuz onaylandıktan sonra yayınlacaktır.

8253

KATEGORİ
  • HTML
  • CSS
  • PHP
  • JQUERY
  • PHOTOSHOP
  • JavaScript
  • Web Dünyası
  • Linux
POPÜLER MAKALE
  • HTML RESME LİNK VERME
  • HTML LİNK(Bağlantı)EKLEME - LİNK VERME
  • HTML YAZI VE RESİM ORTALAMA
  • HTML DİV ve SPAN NEDİR?
  • HTML FORM OLUŞTURMA
  • HTML KAYAN RESİM VE Marguee KULLANIMI
  • HTML ARKAPLANA MÜZİK EKLEME
  • CSS (BOYUT) GENİŞLİK VE YÜKSEKLİK (Width-Height)
  • HTML RESİM EKLEME
  • PHP ceil()-floor()-round() YUVARLAMA FONKSİYONU
ETİKET
WEBCEBİR © 2013 Tüm hakları saklıdır.