Den " Slut på stackutrymme " fel i ditt JavaScript programmeringsspråk är allmänt kallad stack overflow . När du använder JavaScript funktioner den använder kopieras in i minnet . Minnet på JavaScript kallas " stack ". Om funktionen du använder staplas och manuset behöver en annan funktion , är de båda staplade tillsammans . Detta överskrider stapeln gränsen och orsakar " Slut på stackutrymme " fel . Det finns flera sätt som du kan ändra detta fel gratis om du har ett fast grepp om JavaScript . Instruktioner
1
Öppna JavaScript i din Document Object Model program . Kontrollera ditt manus för en " infinity looping " funktionen . När en funktion kallar sig , kommer funktionen att använda villkorssatser för att se till att funktionen aldrig loopar över sig själv . Använd en countervariable i skriptet för att se till att det inte kommer att slinga evigt utan att stanna . En countervariable kommer göra manuset stopp . Detta sätter en gräns på funktionen. Ställ countervariable enligt behoven hos ditt manus . Om en countervariable av 100 är lämplig , använd 100 . Om det inte är , sedan gå med 10 eller högre .
2
Kontrollera ditt manus för två funktioner som kallar på varandra för att bilda oändlighet slingan . Du kan ha tre eller fler oändlighet slingor i ditt script . Använd villkorssatser för att skydda din kod mot slingan .
3
Kontrollera ditt manus för höga nivåer av rekursiva funktioner . En rekursiv funktion är en funktion som upprepar tillbaka till en tidigare del av manuset . Till exempel skulle en rekursiv manus till ett spel vara om du missade en nivå och sändes tillbaka till den första delen av nivån . Om du inte har din rekursiva funktioner i raden , kan du starta en oändlig loop och tillbaka , vilket gör att " Slut på stackutrymme " fel . En hög nivå i din rekursiv funktion beror på ditt manus och vad du vill göra med det . Rekursiva funktioner kan vara en nödvändig del av koden , så var försiktig när du tar bort dem .
4
Bygg din egen stack , så du vet att det finns inga oändlighet loopar i koden . Öppna din Document Object Model och börja skriva manus . Håll dina countervariables hela manuset så att du vet att det inte finns något oändligt looping hela koden .