所以总结一下你的问题:你想尽可能地避免 IE6 GC 错误的麻烦。该错误有两个原因:
- 垃圾收集每隔这么多分配发生一次;因此,您进行的分配越多,GC 运行的频率就越高;
 
- “空中”的对象越多,每次垃圾收集运行所需的时间就越多(因为它会遍历整个对象列表以查看哪些被标记为垃圾)。
 
导致 1 的解决方案似乎是:保持分配数量减少;尽可能少地分配新的对象和字符串。
导致 2 的解决方案似乎是:减少“活动”对象的数量;一旦不再需要字符串和对象,请立即删除它们,并在必要时重新创建它们。
在某种程度上,这些解决方案是矛盾的:保持内存中的对象数量较少将需要更多的分配和取消分配。相反,不断重用相同的对象可能意味着在内存中保留比绝对必要的更多的对象。
现在回答你的问题。无论您是通过创建一个新对象还是通过删除其所有属性来重置一个对象:这将取决于您之后想要对它做什么。
您可能希望为其分配新属性:
- 如果您立即这样做,那么我建议立即分配新属性,并先跳过删除或清除。(不过,请确保所有属性都被覆盖或删除!)
 
- 如果该对象不会立即使用,但会在稍后的某个阶段重新填充,那么我建议将其删除或将其分配为 null,然后再创建一个新对象。
 
没有快速、易于使用的方法来清除 JScript 对象以供重用,就好像它是一个新对象一样 — 无需创建一个新对象。这意味着对您的问题的简短回答是“否”,就像 jthompson 所说的那样。