3

Guys i want to sorting an array using sortOn, i very confused because i need some custom sorting array method to get my purpose, this is my array :

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

i want to sorting myArray[] by name and z value, so if i trace(); myArray the result is :

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

So, how can I sort myArray[] using sortOn(); method, to match with what I want?

D2N
  • 57
  • 1
  • 4

1 Answers1

1

I think you want this...

    myArray.sortOn( ["z", "name"],[Array.DESCENDING,null]);
Kabir
  • 1,419
  • 17
  • 33