In Java and other C-derived languages, an array literal can have a comma after 
the last element, for example:

int[] numList = {1, 2, 3,};

In ActionScript, you can do the same thing:

var numList:Array = [1, 2, 3,];

In both cases, the array has a length of 3. The trailing comma is basically 
ignored, it's permitted to make moving the elements around in the editor 
easier, I assume.

I noticed something else today about array literals in actionscript. You can 
pretty much add additional commas wherever you want:

var numList:Array = [ ,  , ,1, 2, , 3,,,];

And except for the final trailing comma, the array will have an element for 
each of those commas. The element will be null or undefined where there is no 
actual value.

I was surprised when I discovered this, because I would swear I've had compiler 
errors over misplaced commas in array literals before. Am I imagining things?

I checked the AS3 programmers reference, and googled around to other pages, and 
nowhere could I find any documentation of this behavior.

Is this a bug, or a feature?

Reply via email to