arrays - 使用对象属性自定义排序数组

标签 arrays sorting flash-cs5 actionscript-3

伙计们,我想使用 sortOn 对数组进行排序,我很困惑,因为我需要一些自定义排序数组的方法来达到我的目的,这是我的数组:

var C:Node = new Node(); var D:Node = new Node(); var E:Node = new Node(); 
var F:Node = new Node(); var K:Node = new Node(); var L:Node = new Node();
//Node is graphic
var myArray:Array = [C, D, E, F, K, L];

C.name = "C"; D.name = "D"; E.name = "E"; F.name = "F"; K.name = "K"; L.name = "L";
C.z = 2; D.z = 1; E.z = 2; F.z = 1; K.z = 1; L.z = 2;

for (var a:int = 0; a<myArray.length; a++) trace(myArray[a].name+".z : "+myArray[a].z);
//Output is :
//C.z : 2    
//D.z : 1
//E.z : 2
//F.z : 1
//K.z : 1
//L.z : 2

我想按名称和 z 值对 myArray[] 进行排序,所以如果我跟踪 (); myArray 结果是:

for (var b:int = 0; b<myArray.length; b++) trace(myArray[b].name+".z : "+myArray[b].z);
//output is :
//C.z : 2    
//E.z : 2
//L.z : 2
//D.z : 1
//F.z : 1
//K.z : 1

那么,如何使用 sortOn() 对 myArray[] 进行排序;方法,以匹配我想要的?

最佳答案

我想你想要这个...

    myArray.sortOn( ["z", "name"],[Array.DESCENDING,null]);

关于arrays - 使用对象属性自定义排序数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17417816/

相关文章:

java - 对具有内存限制的大文件进行排序 - 外部排序

bash - 什么时候以及为什么我需要一个 's' 标志来按列排序

iphone - 闪存 CS5.5 : Photo is rotated when capture a photo using CameraUI on iPhone

flash - 文档类中的阶段为空? ActionScript 3.0 Flash CS5

css - Dreamweaver CS5 上的历史记录面板呈灰色

javascript - Jquery Datatable - 日期排序不适用于月份(相对于日期的月份)

ios - tableView 中的索引超出范围

PHP usort() 相等情况下的顺序

java - 如何从联系人中获取电话号码?

javascript - 使用 es6 映射返回对象中解构的数组