המרת נתונים

‏ • 4 בספטמבר, 2004

המרה ל Boolean:

המרה ל boolean מתבצעת ככה:



1
2  

var y=1234;
var x=!!y;


ערכים מספריים:
NaN ו- 0 יומרו ל false.
כל השאר (מספרים שלילייים, חיוביים, שברים) יומרו ל true.

מחרוזות:
"" יומר ל false
כל השאר יומר ל true

אחרים:
undenfined, null ו false יומרו, כמובן, ל false.
אובייקטים ו true יומרו ל true. גם פונקציות יומרו ל true, אבל פה צריך להזהר קצת:



1
2
3
4
5  

function x(){
    return false;
}
var y=!!x; //true
var y=!!x(); //false

המרה ל String:

המרה למחרוזת יכולה להתבצע עם השיטה toString() אבל יותר יעיל לבצע את זה כך:



1
2  

var x = 1234;
var y = "" + x;

כשמדובר בפונקציות תוחזר מחרוזת הכוללת את קוד הפונקציה. במקרה של אובייקטים זה תלוי באובייקט.
כל השאר פשוט יומרו למה שהם היו קודם רק בתור מחרוזת.

המרה ל Integer/Float:

מתבצעת כך:



1
2  

var x="1234";
var y=1*x;

כל פעולה מתמטית אחרת גם תתקבל (הפחתת 0, למשל).

מחרוזות:
"" יומר ל-0.
סתם מחרוזות יחזירו NaN.
אם זה סטרינג שכולל בתוכו בסיס ספירה, הוא יומר לערך המספרי שלו בבסיס עשרוני.

אחרים:
פונקציות, אובייקטים ו undenfined יחזירו NaN.
null, ו-false יומרו ל – 0.
true יומר ל 1.

הערה:
ניתן להשתמש בפונקציות כמו parseInt, אבל ישנם קצת הבדלים.
למשל: כשממירים "" parseInt מחזיר NaN לעומת הכפלה ב 1 שמחזירה 0.
השימוש בפונקציות האילו פחות יעיל מהדרך שהדגמתי קודם, להלן דוגמה:
לחץ כאן למדידת זמן ההמרות

תגיות: , , , , ,

תגובות בפייסבוק