array variables are "pointers" to the array in memory. If you have:
arrayOne = [1,2,3,4,5];
then the variable arrayOne is pointing to a block of 5 variable values (numbers) somewhere out in your computers memory. When you try to assign another variable name to be that array ie.
arrayTwo = arrayOne;
Then that new variable will get the pointer aspect of the old one, where it would then point back to that same block in memory and each arrayOne and arrayTwo would be accessing and changing the same values.
To prevent this, you need to make a copy of the array. In flash you can do this using the Array objects slice method which extracts a portion (or all) of the given array and returns it as a new array.