Tüm blog yazıları

JavaScript’te Mantıksal AND (&&) Operatörü

Bir yazılım geliştirici olarak sadece tek bir durumu değil, çoğu zaman birden fazla koşulu aynı anda kontrol etmek zorunda kalırsın. Örneğin bir kullanıcı giriş yaptı mı, şifresi yeterince güvenli mi, e-posta adresi geçerli mi? Tüm bunların birlikte kontrol e

eminbasbayan4 dk okuma
JavaScript’te Mantıksal AND (&&) Operatörü

Bir yazılım geliştirici olarak sadece tek bir durumu değil, çoğu zaman birden fazla koşulu aynı anda kontrol etmek zorunda kalırsın. Örneğin bir kullanıcı giriş yaptı mı, şifresi yeterince güvenli mi, e-posta adresi geçerli mi? Tüm bunların birlikte kontrol edilmesi gerekir.

İşte bu gibi durumlarda mantıksal operatörler, yani JavaScript’in içinde hazır olarak bulunan "ve", "veya", "değil" gibi araçlar devreye girer. Bu makalede, özellikle AND yani && operatörünü öğreneceğiz.

Mantıksal Operatörler Nedir?

Mantıksal operatörler, iki veya daha fazla durumu birleştirmek için kullanılır. Bu operatörler sayesinde birden çok koşulu aynı anda değerlendirebiliriz. JavaScript’te üç temel mantıksal operatör vardır:

  • && (AND – ve): Tüm koşullar doğruysa sonuç doğru olur.
  • || (OR – veya): En az bir koşul doğruysa sonuç doğru olur.
  • ! (NOT – değil): Koşulun tersini alır.

Biz bu yazıda sadece && operatörü üzerinde duracağız.

&& Operatörü Nasıl Çalışır?

&& operatörü iki koşulu birbirine bağlar. Her iki koşul true (doğru) olursa, bütün ifade de true döner. Ama sadece biri bile false (yanlış) ise, tüm sonuç false olur.

Bu kuralı şöyle düşünebilirsin:

“İki kilitli bir kapı düşün. Kapının açılması için her iki kilidin de anahtarla açılmış olması gerekir. Biri kilitli kalırsa kapı açılmaz.”

Örneklerle && Operatörü

Aşağıdaki örneklerde && kullanımının nasıl sonuç verdiğini görelim:

jsx
true && true       // Sonuç: true
true && false      // Sonuç: false
false && true      // Sonuç: false
false && false     // Sonuç: false

Bu örneklerden görebileceğimiz gibi sadece her iki taraf da true olduğunda sonuç true olur.

Günlük Hayattan Bir Senaryo

Ali'nin ailesiyle yaptığı bir anlaşma var:

"Hafta sonu sinemaya gidebilmek için hem odanı toplamalısın hem de kitap okumuş olmalısın."

Bu durumda kurallar şunlar:

  • Oda toplandı mı?
  • Kitap okundu mu?

Ancak biri eksikse, Ali sinemaya gidemez. Bu da demektir ki:

jsx
const odaToplandi = true;
const kitapOkundu = false;

if (odaToplandi && kitapOkundu) {
  console.log("Sinemaya gidebilirsin.");
} else {
  console.log("Şartları yerine getirmediğin için sinemaya gidemezsin.");
}

Bu örnekte sonuç: “Şartları yerine getirmediğin için sinemaya gidemezsin.”

Programlamada && Kullanımı: Kullanıcı Girişi Kontrolü

Gerçek bir senaryoya bakalım. Bir kullanıcı sisteme giriş yapacak. Biz bu kullanıcıdan iki şey bekliyoruz:

  1. Kullanıcı adı en az 4 karakter olmalı
  2. Şifre, boşluk karakteri içermemeli

İşte bu kuralları tek if ifadesi ile kontrol edebiliriz:

jsx
const kullaniciAdi = prompt("Kullanıcı adınızı girin:");
const sifre = prompt("Şifrenizi girin:");

if (kullaniciAdi.length >= 4 && sifre.indexOf(' ') === -1) {
  console.log("Giriş başarılı.");
} else {
  console.log("Kullanıcı adı veya şifre hatalı.");
}

Burada, her iki şart da doğruysa kullanıcı giriş yapabilir. Aksi takdirde sistem, girişe izin vermez.

Kısa Devreleme (Short-Circuiting) Nedir?

JavaScript bazen kodu daha verimli çalıştırmak için bazı bölümleri hiç kontrol etmez. && operatöründe, ilk ifade false ise, ikinci ifadeye bakmaya gerek yoktur çünkü sonuç zaten false olacaktır.

Örnek:

jsx
const yas = 15;

if (yas > 18 && isim.length > 2) {
  console.log("Giriş yapıldı.");
}

Burada yas > 18 zaten false olduğu için isim.length > 2 kısmına bakılmaz bile.

Bu davranışa short-circuiting (kısa devreleme) denir. Performans için önemlidir.

Tablolu Özet

Koşul AKoşul BA && B Sonuç
truetruetrue
truefalsefalse
falsetruefalse
falsefalsefalse

Sonuç

Mantıksal && operatörü, iki şartın aynı anda doğru olması gerektiği durumlarda kullanılır. Yazdığınız uygulamada birçok karar, bu tür kontrol ifadelerine bağlıdır.

Bir e-ticaret sitesinde ürünün stokta olup olmadığını ve kullanıcının giriş yapıp yapmadığını kontrol etmek, bir oyunda oyuncunun yeterli puanı ve canı olup olmadığını belirlemek hep buna örnektir.

Bu konuyu tam anlamıyla öğrendiğinizde, birden fazla koşulu birlikte değerlendirme beceriniz gelişecek ve daha güçlü, daha doğru çalışan kodlar yazabileceksiniz.

Bir sonraki yazıda || (veya) operatörünü inceleyerek, şartları daha esnek nasıl değerlendirebileceğimizi öğreneceğiz.

JavaScript Classes ile pratik uygulamalar, metotlar arası iletişim ve gerçek dünya kod örnekleri
JavaScript Dersleri9 dk okuma

JavaScript Classes - Pratik Uygulamalar

JavaScript class'ları ile pratik uygulamalara geçin! Metotlar arası iletişimden constructor'da metot çağırmaya, kod tekrarını azaltmaktan gerçek dünya senaryolarına kadar class kullanımının inceliklerini keşfedin. Kendi alışveriş sepeti örneğinizle bilginizi pekiştirin.

Yazıyı oku
JavaScript class yapısını gösteren bir kod örneği, ES6 ile modern nesne oluşturma
JavaScript Dersleri9 dk okuma

JavaScript Classes

ES6 ile JavaScript'e gelen class yapısı sayesinde nesne oluşturmak artık çok daha kolay ve düzenli! Constructor function karmaşasından kurtulup, okunabilir ve yönetilebilir kodlar yazmak isteyenler için modern JavaScript'in temel taşı olan class'ları tüm detaylarıyla keşfedin. Bu rehberle nesne şabl

Yazıyı oku
JavaScript kodunda Constructor Function ve new keyword'ü ile nesne oluşturma örnekleri
JavaScript Dersleri8 dk okuma

Constructor Functions ve new Keyword

Factory Function'ların hafıza israfı sorununa Constructor Function'lar ve new keyword'ü ile son verin! Metotları paylaştırarak JavaScript objelerini daha verimli nasıl oluşturacağınızı, new'in perde arkasında neler yaptığını ve prototype sisteminin gücünü bu rehberde keşfedin.

Yazıyı oku

Çerez tercihlerin

Platformun çalışması için zorunlu çerezler kullanıyoruz. İzin verirsen anonim kullanım verilerini ölçüyoruz. Ayrıntıları incele