AS3 - 对嵌套数组的数组进行排序

cro*_*y88 4 flash actionscript-3

我将如何根据其中一个嵌套数组元素的内容对嵌套数组的数组进行排序?

var nestedArray1:Array = new Array(0,0,1);
var nestedArray2:Array = new Array(0,0,9);
var nestedArray3:Array = new Array(0,0,7);
var nestedArray4:Array = new Array(0,0,3);

var parentArray:Array = new Array(nestedArray1,nestedArray2,nestedArray3,nestedArray4);
Run Code Online (Sandbox Code Playgroud)

我想最终得到一个使用嵌套数组第3个元素排序的数组.

所以跟踪sortedParentArray会给我:0,0,1,0,0,3,0,0,7,0,0,9

它是nestedArray1,nestedArray4,nestedArray3,nestedArray2

谢谢,

标记

kap*_*pex 10

由于您可以使用与属性相同的方式访问数组索引(与之array[2]相同array["2"]),因此可以使用sortOn.

parentArray.sortOn("2", Array.NUMERIC);
Run Code Online (Sandbox Code Playgroud)

如果不希望对不同的条目进行不可预测的顺序,您还可以将其他索引用作第二或第三个排序字段.

parentArray.sortOn(["2","1","0"], Array.NUMERIC);
Run Code Online (Sandbox Code Playgroud)