🚀 BAŞTAN SONA JAVASCRIPT BÖLÜM-3: Operatörler, Karar Yapıları (`if/else`), `===` vs `==` ve Short-Circuit Mantığı 🟡

Konu Özeti

JavaScript'te aritmetik, atama ve karşılaştırma operatörleri ile katı eşitlik (===) ve gevşek eşitlik (==) arasındaki farklar açıklanıyor. Karar yapıları (if/else, switch-case) ve short-circuit (kısa devre) mantığı ele alınıyor. Tip dönüşümü yapan gevşek eşitliğin aksine, katı eşitliğin hem değer hem tip kontrolü yaparak daha güvenli olduğu vurgulanıyor.

🚀 BAŞTAN SONA JAVASCRIPT BÖLÜM-3: Operatörler, Karar Yapıları (`if/else`), `===` vs `==` ve Short-Circuit Mantığı 🟡

Selamlar! Serimizin 3. bölümüne hoş geldiniz.

Önceki bölümde `let`, `const` ve `var` arasındaki farkları, Block Scope mantığını, Primitive vs Reference tipleri ve tip dönüşümlerini incelemiştik. Bu bölümde ise hesaplamaları yapmamızı sağlayan **Operatörleri**, **Katı Eşitlik (`===`)** ile **Gevşek Eşitlik (`==`)** farkını, **Karar Yapılarını (`if/else`, `switch-case`)** ve JS dünyasında sıkça kullanılan **Short-Circuit (Kısa Devre)** operatörlerini öğreneceğiz.

---

🔢 1. JavaScript Operatörleri 🧮

### A. Aritmetik ve Atama Operatörleri:
• `+`, `-`, `*`, `/` -> Standart matematiksel işlemler.
• `%` -> Mod alma (Kalan bulma).
• `**` -> Üs alma (Örn: `2 ** 3 = 8`).
• `+=`, `-=`, `*=`, `/=` -> Bileşik atama operatörleri (`x += 5` -> `x = x + 5`).

### B. Karşılaştırma Operatörleri:
• `>`, `<` -> Büyük mü? / Küçük mü?
• `>=`, `<=` -> Büyük-eşit mi? / Küçük-eşit mi?

---

⚠️ 2. Kritik Fark: Katı Eşitlik (`===`) vs Gevşek Eşitlik (`==`) ⚖️

JavaScript'te eşitlik kontrolü yapılırken iki farklı operatör bulunur. Bu ayrımı bilmek yazılım krizlerini engeller!

### A. Gevşek Eşitlik (`==` / `!=`):
Tipleri karşılaştırmadan önce **otomatik tip dönüşümü (Type Coercion)** yapar. Değerler eşitse `true` döner.

### B. Katı Eşitlik (`===` / `!==`) — *Best Practice!*:
Hem **değeri** hem de **veri tipini** kontrol eder. Tip uyuşmuyorsa dönüştürme yapmaz, doğrudan `false` döner.

```javascript
console.log(5 == "5"); // true (String "5" otomatik Number 5 yapıldı)
console.log(5 === "5"); // false (Biri Number, diğeri String - Tipler farklı!)

console.log(0 == false); // true
console.log(0 === fals
e); // false (Number vs Boolean)

🔒 Bu içeriği görmek için giriş yapın

 
Yanıt yazmak için giriş yapmalısınız
Forum özelliklerini kullanmak ve Level 2 üyelik satın almak için hesabınıza giriş yapın.
136,745Threads
3,308,108Messages
328,595Members
wextyyyLatest member
Top Bottom