המרת טיפוסים בג'אווה סקריפט מתייחסת לשינוי ערך של סוג נתונים (Data Type) אחד לאחר. המרה זו יכולה להתרחש בשתי דרכים הנקראות implicit ו explicit. ההבנה כיצד להמיר טיפוסים בג'אווה סקריפט היא הבנה קריטית לכתיבת קוד JavaScript יעיל.
Implicit Conversion
המרה מסוג implicit, המכונה גם type coercion, מתרחשת אוטומטית כאשר JavaScript מצפה לערך מסוג מסוים. השפה ממירה את הערך מאחורי הקלעים כדי להתאים לסוג המצופה.
// Example of Implicit Conversion
let result = '5' + 2; // "52" (number 2 is converted to string "2")
let sum = '5' - 2; // 3 (string "5" is converted to number 5)
let bool = '5' == 5; // true (string "5" is converted to number 5)
Explicit Conversion
המרה מסוג explicit, המכונה גם typecasting, מתרחשת כאשר אתם ממירים ערך באופן ידני מסוג אחד לאחר באמצעות פונקציות JavaScript כאלו ואחרות.
// Example of Explicit Conversion
let numStr = '123';
let num = Number(numStr); // Converts string to number
let str = String(456); // Converts number to string
let bool = Boolean(1); // Converts number to boolean
דוגמאות להמרת טיפוסים
להלן כמה תרחישים נפוצים בהם המרת טיפוסים יכולה להיות שימושית:
1. המרת מחרוזות למספרים
let str = '123';
let num = Number(str); // Explicit conversion
let numImplicit = +str; // Implicit conversion
console.log(num); // 123
console.log(numImplicit); // 123
2. המרת מספרים למחרוזות
let num = 456;
let str = String(num); // Explicit conversion
let strImplicit = num + ''; // Implicit conversion
console.log(str); // "456"
console.log(strImplicit); // "456"
3. המרה ל-Boolean
let falsyValue = 0;
let truthyValue = 'hello';
let bool1 = Boolean(falsyValue); // Explicit conversion
let bool2 = !!truthyValue; // Implicit conversion
console.log(bool1); // false
console.log(bool2); // true
סיכום
ההבנה כיצד להמיר טיפוסים ב-JavaScript עוזרת לכתיבת קוד נקי ו״צפוי״ יותר. המרה מסוג implicit עלולה להוביל לעיתים לתוצאות בלתי צפויות, ולכן לעיתים עדיף להשתמש בהמרה מסוג explicit כשיש צורך להבטיח שערך כלשהו יהיה מסוג ספציפי.