在Javascript中如何释放对象?(100分)

  • 主题发起人 曹晓钢
  • 开始时间

曹晓钢

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一个问题一直没有搞清楚。
就是说,Array和对象都是可以随便申请的,但是却没有办法释放她。
比如,
array[1]="a";
array[1000]="ads";
就可以立即申请1000个节点,但是我想删除第一个怎么办?
或者,是不是根本就没有办法释放?
还是IE会自己释放?
 
IE会自己释放. 不必担心内存泄露.
 
真的吗?
在那里有官方说明?
我在MSDN里找了好几圈了。
还有就是如何在array里删除一个元素?
 
放心了,JS是解释执行的,和delphi不一样,不用担心什么指针什么的.
实现机制完全不一样. 内存是即用即分配的. 当你定义array[1000]时,
实际上并没有给你内存,使用时才分配.
数据并不存在"删除"的概念,你把后面的元素覆盖前面的就可以了.不要担心
后面空出来空间,因为你不使用它,它就根本不存在.
 
我试过了,
删除一个元素,比如arr[20]需要删除,只要
for (int i=20;i<arr.length;i++)
arr=arr[i+1];
arr.length--;
就可以了。
 
for (int i=20;i&amp;lt arr.length;i++)
arr=arr[i+1];
arr.length--;
就可以了。
 
多人接受答案了。
 
呵呵,为什么不继续讨论??
内存释放了,其他资源呢??如Socket??
 
Sign,看错了,是JavaScript不是Java。
Sorry!
 
顶部