Javascript Karar Yapıları
Hepinize merhaba dostlarım :). Daha önce php üzerinde gösterdiğim karar yapılarını şimdi ise javascriptte anlatmak istiyorum :). Çünkü bir web geliştirici her zaman php kullanır vs diye bir kural yok zaman gelecek javascript de kullanacak :). Sözü daha fazla uzatmadan dostlarım gelin hep beraber karar yapılarına girelim. PHP üzerinde karar yapılarını okumayanlar için
https://blog.mfsoftware.net/yazi/php-karar-yapilari
linkini koyuyorum dostlarım. Şimdi gelin karar yapıları nelerdir ona bakalım :)
Karar Yapıları Nedir ?
Dostlarım mantıksal bir açıklama yapıp bunu özetleyelim. Örneğin iki sayı toplatıyoruz diyelim. Çıkan sonucun tek veya çift olduğunu ekrana bastırmamız gerekti :). Ne yapcaz ? İşte dostlarım bu ve bunun gibi zamanlarda karşımıza karar yapıları geliyor :). Heyecanlanıyorsunuz öğrenmek için hissediyorum. Gelin ilk karar yapımızdan başlayalım
1-) If-Else
Dostlarım daha önce başka bir dilde çalışmış iseniz direk görür görmez bilmişsinizdir ki bu her programlama dilinde kullanılır ve ismi stabildir :). Bilmeyen dostlarım için anlatmak gerekirse belirttiğiniz şart eğer sağlanıyorsa If bloğu içerisindeki belirttiğiniz kodlar çalışır, eğer koşul sağlanmıyor ise Else bloğu içerisindeki belirtilen kodlar çalışır dostlarım :). Gelin bunun örneğini yapalım. İki örnek yazalım ve birinde koşul sağlansın diğerinde de koşul sağlanmasın :)
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<title>Javascript Karar Yapıları | MFSoftware Blog</title>
</head>
<body>
<script>
var a = 3; // a değişkenine 3 değerini yazdık
var b = a + 7; // b değişkenine 10 değerini atadık
var toplam = a+b;
if(toplam%2==1){
// sonuç tek ise
alert("Sayı Tek: "+toplam);
}else{
// sonuç çift ise
alert("Sayı Çift: "+toplam);
}
/******************************************/
var yas = 15;
if(yas>=24){
alert("Tır Ehliyeti Alabilir");
}else{
alert("Tır Ehliyeti Alamaz");
}
/*
İlk Örneğin Ekran Çıktısı: Sayı Tek: 13
İkinci Örneğin Ekran Çıktısı: Tır Ehliyeti Alamaz
*/
</script>
</body>
</html>
Evet dostlarım ilk örnekte de görüldüğü gibi a değişkenine 3 değerini b değişkenine de 10 değerini atadık ve toplamını sorguladık. Toplam 13 yani tek olduğu için if sorgusunda belirttiğimiz yani "Sonuç Tek Mi?" sorgusuna düştü ve if bloğu içerisindeki kodlar çalıştı :).
İkinci örnekte de tır ehliyeti almak isteyen arkadaşımızın yaşını kontrol ettirdik. Dikkat ederseniz if sorgusunda yaş kontrolünden geçemedi çünkü yaşı 15 olduğu için else bloğuna ilerleri ve ekrana "Tır Ehliyeti Alamaz" mesaşı çıktı. Şimdi içinizden diyorsunuzdur biz birden fazla sorgu oluşturmak istiyoruz sürekli olarak if else if else mi yapcaz diye soruyorsunuzdur :). Hayır dostlarım bunun diğer bir örneği var gelin onu inceleyelim :)
2-) If-Else If-Else
Evet dostlarım 1. Örneğin son cümlesinde aklınızda olan sorunun çözümü işte bu kısımda. Süreç şu şekilde işliyor dostlarım if sorgusuna yazdığınız koda bakılıyor eğer sağlanırsa o bloktaki kodlar çalışıyor. Sağlanmazsa else if bloğunun altındaki kodlar çalışıyor. Eğer o da sağlanmazsa else bloğuna gidiliyor. Örnek olarak 2 sayıyı kontrol ettirelim dostlarım. Kontrolümüzdeki amaç iki sayı birbirine eşit mi ? Hangi sayı büyük hangi sayı küçük onları belirtelim.
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<title>Javascript Karar Yapıları | MFSoftware Blog</title>
</head>
<body>
<script>
var a = 10;
var b = 45;
if(a==b){
alert("a sayısı b sayısına eşittir");
}else if(a>b){
alert("a sayısı b sayısından büyüktür");
}else{
alert("b sayısı a sayısından büyüktür");
}
/*
Ekran Çıktısı: b sayısı a sayısından büyüktür
*/
</script>
</body>
</html>
Evet dostlarım yukarıdaki örneği incelerseniz ilk önce if sorgusunda kontrol yapıldı. Koşul sağlanmadı else if sorgusunda başka bir sorgu kontrol edildi. O da sağlanmayınca else bloğunun altındaki kodlar çalıştı. Dostlarım burada else if sorgularını çoğaltabilirsiniz herhangi bir sorun yok :). Ama bellir süre sonra bunun kontrolü zorlayacaktır ki zaten bu else if in sürekli olarak çoğaltılmasına karşı yapılmış bir yapı varken neden sürekli else if açalım ki :). Gelin hızlıca diğer adıma geçelim ve bu bahsettiğim yapıyı inceleyelim
3-) Switch Case
Artık else if leri çoğaltmaktan daha güzel bir yapı olan switch case konusundayız :). Dostlarım koşullarımız uzayabilir gittikçe bunu if else ile yapsak ekstra bir boşluk ekstra bir alan vs falan oluşturmak olacaktır. Ama switch case varken neden bunu yapalım ki :). Gelin sizinle bir örnek yaparak bunu inceleyelim. Örnek olarak benim doğum yılımı kontrol ettirelim :)
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<title>Javascript Karar Yapıları | MFSoftware Blog</title>
</head>
<body>
<script>
var dogum_yili = 1999;
switch(dogum_yili){
case 1997: alert("Admin 1997 dogumlu");
break;
case 1998: alert("Admin 1998 doğumlu");
break;
case 1999: alert("Admin 1999 doğumlu");
break;
default : alert("Adminin Doğum Tarihi Bilinmiyor");
break;
}
/*
Ekran Çıktısı: Admin 1999 doğumlu
*/
</script>
</body>
</html>
Evet dostlarım örnekte görüldüğü üzere 1999 tarihi geldi ve tek tek case içerisindeki şartları dolaştı :). 1999 ile eşleşinde ekrana "Admin 1999 doğumlu" yazısını bastırdı :). Yalnız aklınıza bir soru daha takıldı bunu biliyorum :). Soru da şu
case şartı sağlanınca çalışacak olan kodlar çok satır olacağı durumda ne yapacağız ?
çözüm basit dostlarım :). Tek yapmak gereken süslü parantez açmak :). Aynı aşağıdaki şekildeki gibi :)
case 1999: {
alert("Admin 1999 doğumlu");
alert("1999 da Konya'da Doğdu");
}
break;
Evet dostlarım :). Case şartına süslü parantez açarak içerisine birden fazla kod yazıp işlemlerimizi gerçekleştirebiliriz :)
Umarım faydalı olabilmişimdir dostlarım :). Karmaşık geliyorsa başlarda defalarca söylediğim söz vardır istikrarlı olmak ve bolca pratik yapmak :). Bu ikisini uyguladığınız sürece başarı kaçınılmazdır dostlarım :).
Hayallerinizi gerçekleştirmeniz ve güzel yerlere gelmeniz dileklerimle... İyi çalışmalar dilerim :)
Yazar Hakkında
Kendi Halinde Bir Backend Developer