נפתרה: מדידת זמן ריצת פונקציה

הבעיה העיקרית במדידת זמן ריצת פונקציות היא שיכול להיות קשה לקבוע כמה זמן לוקח פונקציה מסוימת לביצוע. הסיבה לכך היא שהזמן שלוקח לפונקציה לפעול יכול להיות תלוי במגוון גורמים, כולל גודל ומורכבות הפונקציה, המחשב שבו היא מבוצעת ומהירות המעבד של המחשב.

There are many ways to measure the run time of a function in JavaScript. One way is to use the Date object:

function measureFunctionRunTime(func) { var start = new Date().getTime(); func(); var end = new Date().getTime(); return end - start; }

1. פונקציה זו לוקחת פרמטר שנקרא "func" שהוא פונקציה.
2. לאחר מכן הוא יוצר אובייקט Date חדש ומקבל את הזמן באלפיות שניות (getTime()). זו שעת ההתחלה.
3. לאחר מכן הוא מריץ את הפונקציה שהועברה כפרמטר.
4. הוא יוצר עוד אובייקט Date חדש ומקבל את הזמן שוב באלפיות שניות (getTime()). זוהי שעת הסיום.
5. לבסוף, הוא מחזיר את ההפרש בין שעת הסיום לשעת ההתחלה (סוף – התחלה). זה נותן לך את זמן הריצה של הפונקציה באלפיות שניות.

סוגי איגוד

ישנם שלושה סוגים של איגודים ב-JavaScript: קפדניים, רופפים ומרומזים.

איגודים קפדניים הם המגבילים ביותר. הם מאפשרים לשלב רק סוג אחד של אלמנט עם סוג אחר של אלמנט. לדוגמה, איחוד קפדני בין מספר שלם למחרוזת יאפשר רק לשלב מספרים שלמים עם מחרוזות. איגודים רופפים פחות מגבילים מאיגודים קפדניים. הם מאפשרים לשלב כל שני סוגים של אלמנטים, כל עוד השילוב הגיוני. לדוגמה, איחוד רופף בין מספר שלם למחרוזת יכול לכלול גם מספרים וסמלים. איגודים מרומזים הם הסוג הכי פחות מגביל של איגוד. הם מאפשרים לשלב כל סוג של אלמנט עם כל סוג אחר של אלמנט, ללא צורך לציין באיזה סוג של איחוד מדובר. לדוגמה, איחוד מרומז בין מספר שלם למחרוזת יכול לכלול גם מספרים וסמלים.

הקלדה

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

לדוגמה, אם תרצה להקליד "פונקציה", פשוט תקליד "f" ו-JavaScript ישלים עבורך את שאר המילה באופן אוטומטי. אם תרצה להקליד "התראה", פשוט תקליד "a" ו-JavaScript ישלים עבורך את שאר המילה באופן אוטומטי.

הקלד רמזים

רמזים לסוג הם תכונה של שפת JavaScript המאפשרים לך לציין את סוג הביטוי מבלי שתצטרך להשתמש ב-typeof האופרטור. לדוגמה, הקוד הבא מצהיר שהמשתנה x הוא מספר:

var x = 5;

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

function multiply(x) { return x * x; }

הודעות קשורות:

השאירו תגובה