Örtük tür dönüşümü
+, == 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
-
"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.
-
Birleştirme ifadesini tamamla
let result = "5" + ____; console.log(result);Cevabı göster
let result = "5" + 3; console.log(result); -
İfadeyi sonuca eşle
- "5" + 3
- "53"
- "5" - 3
- 2
- "5" * 2
- 10
- "abc" * 2
- NaN