כיצד לתקן את השגיאה "אין ב-Javascript שטח מחסנית" בחינם

...

תקן את קודי השגיאה שלך ב-Java ושפר את המחשב שלך.

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

שלב 1

פתח את JavaScript בתוכנית Document Object Model שלך. בדוק את הסקריפט שלך עבור פונקציית "לולאה אינסוף". כאשר פונקציה קוראת לעצמה, הפונקציה תשתמש בהצהרות מותנות כדי לוודא שהפונקציה לעולם לא תעבור לעצמה. השתמש במשתנה נגדי בסקריפט שלך כדי לוודא שהוא לא יעבור לנצח בלי להפסיק. משתנה נגדי יגרום לסקריפט לעצור. זה שם גבול לפונקציה. הגדר את המשתנה הנגדי בהתאם לצרכים של הסקריפט שלך. אם משתנה נגדי של 100 מתאים, השתמש ב-100. אם לא, לכו עם 10 ומעלה.

סרטון היום

שלב 2

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

שלב 3

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

שלב 4

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

אַזהָרָה

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