maximum call stack size exceeded JavaScript
Hibaüzenet
Uncaught RangeError: Maximum call stack size exceeded
Hibás kód
function recurse() { recurse(); }
recurse();
Javított kód
function recurse(n) {
if (n <= 0) return;
recurse(n - 1);
}
recurse(10);
Magyarázat
maximum call stack size exceeded JavaScript hiba akkor fordul elő, amikor egy függvény végtelen rekurzióba kerül, és a hívások egymásra rakódnak a stackben. A JavaScript környezet csak korlátozott számú egymásba ágyazott hívást tud kezelni. A megoldás, hogy minden rekurzív függvénynek legyen kilépési feltétele, vagy nagy ciklusokat iteratívan oldj meg (pl. for-ral).
További információ: MDN – Out of stack space
