这是在Dictionary工作清理所有关键参考吗?
public static function cleanDic(_dic:Dictionary):void { for (var eachKey:String in _dic) { delete _dic[eachKey]; } }
我很担心,如果我在for循环中删除一些键会导致所有元素都不干净.
这会发生吗?
谢谢
解决方法
我不太清楚你的意思
我很担心,如果我在for循环中删除一些键会导致所有元素都不干净.
但是您的代码示例是正确的,这就是字典可以清理的方式. (假设您只使用带有字符串键的Dictionary对象,因为您的for循环使用字符串.请参阅下面的Engineer的评论.)
或者,您可以将字典设置为新实例 – 实现相同的更快:
var dict:Dictionary = new Dictionary (); ... // use dict here dict = new Dictionary (); // effectively cleans the dictionary
然后,Flash垃圾收集器应该释放被丢弃的字典中的所有元素. __