1.1 Açıq tip çevrilməsi
JavaScript-də tiplərin çevrilməsi — bir dəyərin bir tipdən başqa bir tipə çevrilməsi prosesidir. Bu çevrilmənin iki növü var: açıq (əllə) və gizli (avtomatik). Bu prosesləri başa düşmək, səhvlərdən qaçmaq və proqnozlaşdırıla bilən kod yazmaq üçün vacibdir.
Açıq çevrilmə, həmçinin əl çevrilməsi kimi tanınır, JavaScript-in daxili funksiyaları və metodları vasitəsilə həyata keçirilir. Bu çevrilmə, proqramçı tərəfindən hansı tipin başqa bir tipə çevrilməsini dəqiq bir şəkildə göstərdiyi bir prosesdir.
Tip çevrilməsinin əsas metodları:
1. Sətirə çevrilmə
String(value)metodu: dəyəri sətirə çevirir
let num = 123;
let str = String(num);
console.log(typeof str); // "string"
value.toString(): dəyəri sətirə çevirən obyekt metodu
let bool = true;
let str = bool.toString();
console.log(typeof str); // "string"
2. Rəqəmə çevrilmə
Number(value): dəyəri rəqəmə çevirir
let str = "456";
let num = Number(str);
console.log(typeof num); // "number"
parseInt(value, base): sətiri tam ədədə çevirir.baseparametri say sisteminin əsasını göstərir
let str = "123";
let num = parseInt(str, 10);
console.log(typeof num); // "number"
parseFloat(value): sətiri ondalık nöqtəli rəqəmə çevirir
let str = "123.45";
let num = parseFloat(str);
console.log(typeof num); // "number"
3. Boolean dəyərə çevrilmə
Boolean(value): dəyəri Boolean-a çevirir
let str = "";
let bool = Boolean(str);
console.log(typeof bool); // "boolean"
1.2 Tiplərin qeyri-aşkar çevrilməsi
Qeyri-aşkar çevrilmə, həmçinin avtomatik və ya gizli çevrilmə kimi də bilinir və JavaScript tərəfindən fərqli verilənlər növləri ilə əməliyyatlar yerinə yetirilərkən avtomatik olaraq icra olunur. Qeyri-aşkar çevrilmə gözlənilməz nəticələrə səbəb ola bilər, buna görə bunu anlamalı və diqqətlə istifadə etməlisiniz.
1. Sətirə çevrilmə
Hər hansı bir obyektin sətirlə yığılmasında, JavaScript onu sətirə çevirməyə çalışacaq.
Nümunə:
let result = "The number is " + 123;
console.log(result); // "The number is 123"
2. Rəqəmə çevrilmə
Riyazi operatorlardan (toplama istisna olmaqla) istifadə edərkən, rəqəmlər olan sətirlər ilə.
let result = "123" - 0;
console.log(result); // 123 (rəqəm)
Bu praktiki olaraq necə işləyir:
let result = "123" - 10;
console.log(result); // 113 (rəqəm)
let result2 = "123" + 10;
console.log(result2); // 12310 (sətir)
3. Boolean dəyərinə çevrilmə
Logical kontekstlərdə dəyərlərdən (şərt operatorları, dövrlər və s.) istifadə edilərkən.
let value = "hello";
if (value) {
console.log("Dəyər doğru kimi qəbul olunur"); // Çıxış: "Dəyər doğru kimi qəbul olunur"
}
Logical kontekstdə çevrilmə nümunələri:
false,0,""(boş sətir),null,undefined, vəNaNyalan (false) dəyərlər sayılır- Qalan bütün dəyərlər doğru (
true) sayılır
if ("") {
console.log("Bu çap olunmayacaq.");
} else {
console.log('"" boolean kontekstində yalan kimi qəbul olunur.');
}
// '"" boolean kontekstində yalan kimi qəbul olunur.'
1.3 İmplicit çevrilməyə misallar
Aritmetik əməliyyatlarla misal:
let width = "100";
let height = "200";
let area = Number(width) * Number(height); // Aydın çevrilmə
console.log(area); // 20000
let perimeter = (+width) + (+height); // Explicit çevrilmə üçün unar plus istifadə olunur
console.log(perimeter); // 300
Loji kontekstlə misal:
let userInput = ""; // Boş sətir
if (!userInput) {
console.log("İstifadəçi məlumat daxil etməyib."); // Sətirin boolean dəyərinə qeyri-açıq çevrilməsi
}
Kombinə edilmiş tiplərlə misal:
let value = "10";
let increment = 5;
let result = value + increment; // Sayın sətirə qeyri-açıq çevrilməsi
console.log(result); // "105"
result = Number(value) + increment; // Sətirin saya açıq çevrilməsi
console.log(result); // 15
GO TO FULL VERSION