-- Javascript

JavaScript ile IF Karar Yapısı Kullanımı

C/C++, C# ya da Java programlama dillerini kullanıyorsanız dil özellikleri konusunda JavaScript’inde aynı söz dizime sahip olduğunu belirtmek isterim. Birazdan bunu sizde göreceksiniz.

Öncelikle JavaScript ile Nesne Yönelimli Programlama serisinin ilk makalesinde anlattığım üzere kodlarımızı jsbin.com üzerinde yazıp test edeceğiz. Kullanımını o makaleden öğrenebilirsiniz.

IF karar yapısı bilindiği üzere boolean bir değere göre karar veren mekanizma sunmaktadır. Yani, true ise bunu, değilse(false) şunu uygula anlamındadır. En temel anlamda bu karar yapısını kullanalım.

Not : jsbin.com kullanmayıp, bir metin editörü ile JavaScript yazacaksanız console.log() yerine document.write() kullanmalısınız.

if(1 < 2)
   console.log("küçük");
else
   console.log("büyük");

Sonuç olarak küçük yazacaktır. Çünkü 1 değeri 2 değerinden küçüktür. Aslında bu mantıksal yapıyı biz kuruyoruz. Çünkü ne olursa olsun IF’in ilk bloğu true değer sonucunda çalışır, 2. blok ise false değer sonucunda çalışacaktır.

Yukarıdaki kodları daha da basit hale getirebiliriz. Örneğin, 1 değeri 2 değerinden küçükse yapılması gereken işlem var ancak büyükse bir şey yapmak istemiyoruz. Bu durumda tek blok yeterli olacaktır.

if(1 < 2)
   console.log("küçük");

C# ve Java’da olduğu gibi JavaScript’te de true ve false bloklarında birden fazla satır kullanılmadığı sürece yukarıdaki kullanım hata vermeyecektir. Ancak aşağıdaki gibi kullanım hatalıdır.

if(1 < 2)
   console.log("küçük");
   console.log("küçük");
else
   console.log("büyük");

Aynı şekilde false kısmında(büyük değeri) da tek satır yazılabilir. Ancak bu şekilde kullanırsanız hata vermeyecektir. Çünkü bu durum IF karar yapısının dışında bir istek olarak algılanır ve 2. false satırı çalıştırılır.

Önerdiğim ve tavsiye edilen kullanım aşağıdaki gibidir;

if(1 < 2)
{
   console.log("küçük");
   console.log("küçük");
}
else
{
   console.log("büyük");
}

Diğer saydığım dillerde olduğu gibi burada da else if() kullanımı geçerlidir.

var sayi1 = 2;
var sayi2 = 2;

if(sayi1 < sayi2)
{
   console.log("küçük");
}
else if(sayi1 == sayi2)
{
   console.log("eşit");
}
else
{
   console.log("büyük");
}

Bu şekilde birden fazla else if() kullanabilirsiniz. Ancak else bloğu en altta olmalıdır.

Son olarak kapsamlı bir örnek yaparak makelemi sonlandırmak istiyorum.

var sayi1 = parseInt(prompt("Sayı 1 : ", ""));
var sayi2 = parseInt(prompt("Sayı 2 : ", ""));
var operator = prompt("İşlem : ", "");
var sonuc = 0;

if (operator == "+") {
   sonuc = sayi1 + sayi2;
}
else if (operator == "-") {
   sonuc = sayi1 - sayi2;
}
else if (operator == "*") {
   sonuc = sayi1 * sayi2;
}
else if(operator == "/") {
   sonuc = sayi1 / sayi2;
}
else {
   console.log("Tanımsız işlem.");
}
   console.log("Sonuc : " + sonuc);

Yukarıdaki kodları çalıştırdığınızda bir mesaj ekranı çıkacak ve sizden iki kez sayı girmenizi isteyecek, sonraki isteği bir operatör olacak. Bu operatöre göre matematiksel işlem yaparak sonucu ekranda yazacaktır.

İyi çalışmalar.
Cihan Özhan

Yorumla

Yorum