ActionScript 3 - 删除ArrayCollection中的重复项

Dav*_*ngs 1 apache-flex flash actionscript-3 arraycollection

我有一个用户名和用户ID列表的ArrayCollection.在此列表中,我需要删除重复项.我搜索了互联网,虽然有很多使用数组的例子,我找不到使用ArrayCollection的任何明确的例子.

Flo*_*vic 7

应该比其他解决方案更简单.

function removeDuplicatesInArray(val:*, index:uint, array:Array):Boolean {
  return array.indexOf(val) == array.lastIndexOf(val);
}

function removeDuplicatesInCollection(collection:ArrayCollection):ArrayCollection {
  collection.source = collection.source.filter(removeDuplicatesInArray);

  return collection;
}
Run Code Online (Sandbox Code Playgroud)

  • 始终存在优化空间.我想提供一个易于理解的简单解决方案.我不认为为非复杂问题提供复杂的解决方案是有效的.如果它太慢,我们会让它更快.但是,如果过滤特殊项目对某人来说是一个问题,我认为提供代码是错误的,提问者将难以理解.只需2美分. (2认同)