JavaScript: Başlangıçtan İleri Seviyeye
Bölüm 5 / 312 dk okuma

Operatörler

Aritmetik, karşılaştırma, mantıksal, atama ve modern operatörler.

Aritmetik

5 + 3   // 8
5 - 3   // 2
5 * 3   // 15
5 / 3   // 1.666...
5 % 3   // 2  (mod)
5 ** 3  // 125 (üs)

+ operatörü string'lerle birleştirir:

"a" + "b"   // "ab"
"5" + 3     // "53"  ← number string'e çevrilir
5 + 3       // 8

Karşılaştırma

5 == "5"    // true   — gevşek (loose), tip dönüştürür
5 === "5"   // false  — sıkı (strict), tip de eşleşmeli
5 != "5"    // false
5 !== "5"   // true
5 > 3       // true
5 >= 5      // true
Kural

Her zaman === ve !== kullan. == beklenmedik dönüşümler yapar: 0 == ""true, null == undefinedtrue.

Mantıksal

true && false   // false — VE
true || false   // true  — VEYA
!true           // false — DEĞİL

Short-circuit (kısa devre):

const name = inputName || "Misafir";
// inputName "falsy" ise "Misafir" atanır

Atama operatörleri

let x = 5;
x += 3;   // x = x + 3 → 8
x -= 1;   // 7
x *= 2;   // 14
x /= 2;   // 7
x **= 2;  // 49

Modern operatörler

Nullish coalescing ??

Sadece null veya undefined ise sağdaki kullanılır:

const port = config.port ?? 3000;
// 0 veya "" ise korur (|| bunları false sayardı)

Optional chaining ?.

Yol üzerindeki bir şey null/undefined ise undefined döner, hata atmaz:

const city = user?.address?.city;
// user veya address yoksa city = undefined
 
users?.[0]?.name
api?.fetch?.()

Spread ... ve Rest ...

Bunlar ileride detayda gelecek (bölüm 14).

Ternary (üçlü) operatör

const status = age >= 18 ? "yetişkin" : "çocuk";

If/else'in kompakt hali. Sade durumlarda kullan, iç içe yapma.

Truthy / Falsy

Bir değerin "boolean değeri" şudur:

Falsy (8 tane): false, 0, -0, 0n, "", null, undefined, NaN Truthy: geri kalan her şey (boş [] ve {} bile truthy!)

if ([]) console.log("çalışır"); // çalışır
if ("0") console.log("çalışır"); // çalışır — non-empty string

Bu bölümü bitirdin mi?

İlerlemen tarayıcıda saklanır, eğitim listesinde görünür.

Paylaş