javascript: remove all object elements of an associative array
I would like to know the most efficient way of emptying an associative array wit开发者_运维知识库hout causing any memory leak (the values are js objects)
Just to be sure, I have tried iterating through the elements of the array, calling 'delete' operation for each element object, so that all of the element objects will become candidates for garbage collection. Finally, I reset the assoc array using:
somearray = {};
Is it necessary to call the 'delete' operation for each of the element? Or does resetting the variable value suffice so that all elements will be garbage collected?
Thanks!
As long as neither your objects nor the associative array are referenced anywhere else, resetting the array should do it.
Calling delete
on each object is only necessary in IE6 on a DOM element. See here
somearray.length = 0
should work.
精彩评论