如果要清除数组集合,何时需要使用removeAll()与新的ArrayCollection。
删除列表中每个项目的所有迭代。我不想看到我想要使用它的情况。
答案 0 :(得分:8)
如果ArrayCollection包含附加了propertyChange事件调度程序的项目(带绑定?),您可能想要使用removeAll。 removeAll会很好地为您清理这些事件。
但是,如果使用新的ArrayCollection,旧的ArrayCollection将从引用中释放,但可能永远不会被垃圾回收,因为它仍然附加了引用。这可能会导致内存泄漏。
答案 1 :(得分:4)
请注意,如果定义并应用了filterFunction(.refresh()),则removeAll()实际上不会从集合中删除所有元素,并且源数组中有任何元素,被此过滤器拒绝。