With a JavaScript Array, I can reset it to an empty state with a single assignment:
array.length = 0;
This makes the Array \"appear\" empty
So to recap your question: you want to avoid, as much as possible, trouble with the IE6 GC bug. That bug has two causes:
The solution to cause 1 seems to be: keep the number of allocations down; assign new objects and strings as little as possible.
The solution to cause 2 seems to be: keep the number of 'live' objects down; delete your strings and objects as soon as you don't need them anymore, and create them afresh when necessary.
To a certain extent, these solutions are contradictory: to keep the number of objects in memory low will entail more allocations and de-allocations. Conversely, constantly reusing the same objects could mean keeping more objects in memory than strictly necessary.
Now for your question. Whether you'll reset an object by creating a new one, or by deleting all its properties: that will depend on what you want to do with it afterwards.
You’ll probably want to assign new properties to it:
There's no fast, easy to use way to clear a JScript object for reuse as if it were a new object — without creating a new one. Which means the short answer to your question is ‘No’, like jthompson says.