如何真正删除array中的元素,a以及rray引起的内存问题

meizhini 2008-06-29
一个js中的array引起内存爆炸.
这个情况是在ajax模式下引起的.客户端不断从服务器中读数据写入到array中.如果array的长度大于了120,就把array的前面的 10个移出array,开始的时候表现没有问题,2~3个小时之后,显示出来的曲线出现素乱,这个说明array出问题了,查看IE使用的内存已经到了 140M,cpu高达20%.
请问如何解决,做到真正删除数组中的元素,以及垃圾回收.
下面给出代码中的一部分:
var i = 0;
for ( i; i < cur_rm.scale.mv_count ; i++ )//&& i < len; i++ )
{
   cur_rm.cur_arr.origin[ 0 ].hd = null;
   cur_rm.cur_arr.origin[ 0 ].x = null;
   cur_rm.cur_arr.origin[ 0 ].y = null;
   cur_rm.cur_arr.origin[ 0 ] = null;
   cur_rm.cur_arr.origin = cur_rm.cur_arr.origin.del( 0 )
   /*
   var o = cur_rm.cur_arr.origin.shift();
   delete o;
   o = null;
   */
   CollectGarbage();
   cur_rm.cur_arr.zoom[ 0 ].hd = null;
   cur_rm.cur_arr.zoom[ 0 ].x = null;
   cur_rm.cur_arr.zoom[ 0 ].y = null;
   cur_rm.cur_arr.zoom[ 0 ] = null;
   cur_rm.cur_arr.zoom = cur_rm.cur_arr.zoom.del( 0 )
   /*
   var z = cur_rm.cur_arr.zoom.shift();
   delete z;
   z = null;
   */
   CollectGarbage();
}
其中另一种方法是被注释掉的方法,也是不行的.
回答提问也可以到
http://www.iteye.com/problems/1065
有一点一点奖金哦.本人在javaeye上的资金就是30,所以只好选择最少的悬赏了.不好意思啦.唯一办法,多写博客日志,多写点工作的心得,多写点对他人有用的东西来回报这个世界了--呵呵.至于高手你嘛,只好给你投去一点崇拜目光了,以作恭维.
Global site tag (gtag.js) - Google Analytics