I know I can make a copy of an ArrayCollection with ObjectUtil.copy or writing byte array and registering the type. But what happens if you take the source of an existing ArrayCollection, the Array itself, and create a new array? Is it unreferenced to the original ArrayCollection.
var myArrayCollection:ArrayCollection. // passed in value
var myNewArrayCollection = new ArrayCollection(myArrayCollection.source);
Is my original arrayCollection still affected by changes in myNewArrayCollection, like using filterfunctions?
You will have a new ArrayCollection , but changes to the underlying Array will affect both Array collections.
The Array won't be copied when the ArrayCollection is constructed.
The Array is not passed by value - it is a pointer to an Array, not the Array itself.
Filter functions belong to the Array collection, so the Array collections will be independently filtered (filtering the same data in differrent ways).