CodeBlanks Logo Icon CodeBlanks

Örtük tür dönüşümü

JavaScript kursu · Başlangıç · Ders 95/133

+, == ve if koşullarında örtük tür dönüşümünün nasıl çalıştığını öğrenirsin.

Örtük tür dönüşümü

Bazen JavaScript bir işlemi otomatik olarak yaparken değerin türünü sen istemeden değiştirir. Buna örtük (implicit) tür dönüşümü denir.

Örnek: "5" + 3 ifadesinde 3 sayısı dizgiye çevrilir ve sonuç "53" olur. Çünkü + operatörü bir tarafı dizgiyse birleştirme yapar. Ancak "5" - 3 ifadesinde her iki taraf da sayıya çevrilir ve sonuç 2 sayısıdır.

Operatörlere göre dönüşüm

Hangi operatörün nasıl davrandığını bilmek karışıklığı önler. + operatörü bir taraf dizgiyse birleştirme yapar: "a" + 1 → "a1".

-, *, / ise her zaman sayı bekler; dizgileri sayıya çevirir: "10" - 2 → 8, "6" * "2" → 12. Sayıya çevrilemeyen dizgilerde NaN döner: "abc" * 2 → NaN.

Uygulama Üç operatörlü gösterim

showCoercion adında bir fonksiyon tanımla. a ve b parametreleri alsın. Gövdede üç satır yaz: console.log(a + b), console.log(a - b) ve console.log(a * b).

Örnek çözümü göster
function showCoercion(a, b) {
  console.log(a + b);
  console.log(a - b);
  console.log(a * b);
}

Uygulama showCoercion'u iki türle çağır

Aşağıdaki showCoercion fonksiyonu tanımlı. Şimdi onu iki kez çağır: showCoercion("5", 3) ve showCoercion(5, "3"). Her çağrıyı ayrı satıra yaz.

Örnek çözümü göster
function showCoercion(a, b) {
  console.log(a + b);
  console.log(a - b);
  console.log(a * b);
}

showCoercion("5", 3);
showCoercion(5, "3");

Kendini test et

  1. "5" + 3 ifadesi ne döner?

    console.log("5" + 3);
    • 8 (sayı)
    • 53 (sayı)
    • "53" (dizgi)
    • NaN
    Cevabı göster

    "53" (dizgi) — Doğru. + operatörü bir taraf dizgiyse diğer tarafı da dizgiye çevirip birleştirir; sonuç "53" dizgisidir.

  2. Birleştirme ifadesini tamamla

    let result = "5" + ____;
    console.log(result);
    Cevabı göster
    let result = "5" + 3;
    console.log(result);
  3. İfadeyi sonuca eşle

    "5" + 3
    "53"
    "5" - 3
    2
    "5" * 2
    10
    "abc" * 2
    NaN

Başlangıç bölümündeki tüm dersler