schildi: stackspeicher größe

Beitrag lesen

hallo,

weiss jemand wie javascript seinen stackspeicher verwaltet, bzw. wo die grenzen liegen und wie man sie evtl. auch umgehen kann?

die erste funktion läuft durch und speichert alle 100000 einträge in dem array ohne überlauf.

die zweite rekursive funktion dagegen verursacht schon bei 1000 (firefox) bzw 1124 (ie) durchläufen einen overflow des stackspeichers:

  
function test()  
{  
 arr = new Array();  
 for(i=0;i<100000;i++)  
 {  
  arr[arr.length] = "X";  
 }  
}  
  
test();  
  
function rek(i,arr)  
{  
 if(!i) i="";  
 if(!arr) arr=new Array();  
 if(i.length<=1125)  
 {  
  i+="X";  
  document.write(arr.length+" | ");  
  document.write(i+"<br>");  
  arr[arr.length] = "X";  
  rek(i,arr);  
  arr.length = arr.length-1;  
  document.write(arr.length+" | ");  
  document.write(i+"<br>");  
 }  
  
}  
rek();  

vielleicht hat ja jemand bissle mehr ahnung davon.
wär interessant, wie man da am besten vorgehen könnte, ohne zb. mit einer rekursion dieser art so früh an grenzen zu stoßen, oder einfach generell bissle mehr über das ganze zu wissen.

gruß!