var ac:ArrayCollection = new ArrayCollection();
// init
ac.addItem("1");
ac.addItem("2");
ac.addItem("2");
ac.addItem("3");
var nac:ArrayCollection = new ArrayCollection();
// 循环放入新的arraycollection中,已经存在则不进行重新添加
for each(var item:String in ac)
{
if(nac.contains(item))
continue;
nac.addItem(item);
}
Array 去重:
两种方式都可以。
一种是key方式,一种是Value方式。
key方式代码如下:
var ary:Array = [1,5,4,8,1,4,6,11,5];
var nAry:Array = [];
ary.forEach(function(item:*, idx:int, ary:Array):void {
nAry[item] = null;
});
//这里的Key就是唯一的了
for(var key:* in nAry) {
trace(key);
}
value方式代码如下:
var ary:Array = [1,5,4,8,1,4,6,11,5];
var nAry:Array = [];
ary.forEach(function(item:*, idx:int, ary:Array):void {
if(nAry.indexOf(item)==-1)
nAry.push(item);
});
nAry.forEach(function(item:*, idx:int, ary:Array):void {
trace(item);
});
ArrayCollection 去重为有序,Array 去重后为乱序。
ArrayCollection 和 Array 之间的互转
1
var mydb:Array = new Array([],[],[])
var guidedb:ArrayCollection = new ArrayCollection(mydb);
2
var mydb:ArrayCollection = new ArrayCollection ([],[],[])
var guidedb:Array = mydb.source;