Tüm blog yazıları

JavaScript’te Mantıksal NOT (!) Operatörü

Programlama dillerinde kararlar almak, koşulları kontrol etmek oldukça önemlidir. JavaScript bu konuda bize birçok yardımcı araç sunar. Bu araçlardan biri de mantıksal NOT operatörüdür. Bu yazıda, mantıksal NOT’un ne olduğunu, neden kullanıldığını ve farklı örneklerle nasıl çalıştığını adım ad

eminbasbayan3 dk okuma
JavaScript’te Mantıksal NOT (!) Operatörü

Programlama dillerinde kararlar almak, koşulları kontrol etmek oldukça önemlidir. JavaScript bu konuda bize birçok yardımcı araç sunar. Bu araçlardan biri de mantıksal NOT operatörüdür. Bu yazıda, mantıksal NOT’un ne olduğunu, neden kullanıldığını ve farklı örneklerle nasıl çalıştığını adım adım öğreneceğiz.

1. Mantıksal NOT Operatörü Nedir?

JavaScript’te ! (ünlem) sembolü, mantıksal NOT anlamına gelir. Bu operatör, bir mantıksal ifadenin doğruluğunu tersine çevirir.

Basitçe:

  • true olanı false yapar.
  • false olanı true yapar.

Örnek:

jsx
console.log(!true);   // false
console.log(!false);  // true

Yani:

"Doğru değil" → Yanlış

"Yanlış değil" → Doğru

2. Gerçek Hayatla İlişkili Basit Bir Senaryo

Kullanıcıdan yaşını girmesini istiyoruz. Eğer yaş bilgisi boş bırakılırsa, kullanıcıya tekrar giriş yapmasını söylemek istiyoruz. Boş bir değer JavaScript’te falsy kabul edilir.

jsx
const yas = prompt("Lütfen yaşınızı giriniz:");

if (!yas) {
  console.log("Yaş bilgisi zorunludur. Lütfen tekrar deneyin.");
}

Bu kodda olan şey:

  • yas boşsa, yani kullanıcı giriş yapmamışsa, !yas ifadesi true olur.
  • Bu durumda kullanıcıya uyarı verilir.

3. Falsy Değerleri Tanımak

JavaScript’te bazı değerler otomatik olarak “yanlış” kabul edilir. Bunlara falsy değerler denir. İşte bazıları:

  • "" (boş metin)
  • 0 (sıfır)
  • null
  • undefined
  • false
  • NaN

Örnek:

jsx
console.log(!0);         // true
console.log(!"");        // true
console.log(!null);      // true
console.log(!"Elma");    // false

Bu örneklerde ! işareti ile değerlerin mantıksal karşıtları alınmıştır.

4. Uzun Koşullarda NOT Kullanımı

Diyelim ki bir sinema salonuna sadece 13 yaşından büyük olanlar alınacak. Ancak 65 yaş ve üzerindekiler ücretsiz giriyor. Geriye kalanlar için bir ücret ödemesi gerekiyor. Ücretsiz olmayanları kontrol etmek istiyoruz.

jsx
const kullaniciYasi = 40;

if (!(kullaniciYasi <= 12 || kullaniciYasi >= 65)) {
  console.log("Bilet almanız gerekmektedir.");
}

Bu örnekte:

  • (kullaniciYasi <= 12 || kullaniciYasi >= 65) → Bu ifade ücretsiz girenleri tanımlar.
  • ! ile bu ifadenin tam tersini alıyoruz → Yani ücretsiz olmayanları kontrol ediyoruz.

5. Form Girişlerinde Kullanımı

Bir web formunda, kullanıcıdan e-posta adresi almak istiyorsun. Eğer kullanıcı hiçbir şey girmezse, hata mesajı gösterilmesi gerekir.

jsx
const email = prompt("E-posta adresinizi girin:");

if (!email) {
  console.log("E-posta adresi boş bırakılamaz.");
}

Bu kullanım, birçok form kontrol mekanizmasında sıkça görülür. Kullanıcının veri girip girmediği kolayca kontrol edilebilir.

6. Karmaşık Durumlarda NOT’un Gücü

Bazen birden fazla şartı kontrol edip bunların tersini almak isteyebiliriz.

Örneğin, bir kullanıcı hem kayıtlı hem de şifresini doğru girmiş olmalı. Ama biz yanlış durumu kontrol edeceğiz: Ya kayıtlı değilse ya da şifre yanlışsa?

jsx
const kayitli = false;
const sifreDogru = true;

if (!(kayitli && sifreDogru)) {
  console.log("Giriş başarısız. Lütfen bilgilerinizi kontrol edin.");
}

Burada kayitli && sifreDogru ifadesi başarılı giriş durumunu gösterir. Biz bunun tersini kontrol etmek istiyoruz, yani başarısız giriş. Bu nedenle ! kullanıyoruz.

7. NOT Operatörü ile Döngü Kullanımı (Giriş Doğrulama)

Şimdi daha gelişmiş bir örnek yapalım. Kullanıcı, adını girene kadar tekrar tekrar soran bir sistem kurmak istiyoruz:

jsx
let ad;

while (!ad) {
  ad = prompt("Lütfen adınızı girin:");
}

console.log(`Merhaba, ${ad}!`);

Bu örnekte:

  • Kullanıcı geçerli bir ad girene kadar döngü devam eder.
  • Boş geçerse !ad true olur ve tekrar sorulur.

Sonuç

Mantıksal NOT (!) operatörü, JavaScript’te koşulların tersini kontrol etmek için çok güçlü ve kullanışlıdır. Özellikle form doğrulama, yaş kontrolü, giriş kontrolü gibi senaryolarda yaygın olarak kullanılır. Bir değerin yokluğunu ya da istenmeyen durumu kontrol etmek istediğimizde, ! ile kolayca bunu yapabiliriz.

Bu operatörü diğer mantıksal operatörlerle (&&, ||) birlikte kullanarak daha karmaşık ama daha etkili koşullar oluşturmak mümkündür. Bu yüzden ! operatörünü doğru anlamak ve uygulamak, programlamada büyük avantaj sağlar.

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