« PHP:list()関数 | メイン | PHP:count()関数 »
2005年12月05日
FLASH:多次元配列のソート
Action Scriptで多次元配列をソートする場合にはsortOn()関数を使用するのが便利です。
myArray = new Array;
myArray.push({code:"002", name:"PHP"});
myArray.push({code:"003", name:"perl"});
myArray.push({code:"001", name:"SQL"});
myArray.push({code:"004", name:"FLASH"});
myArray.sortOn("code");
for(i=0; i<myArray.length; i++){
trace(myArray[i].code + ", " + myArray[i].name);
}
※上記の結果、
001, SQL
002, PHP
003, perl
004, FLASH
を出力します。
※1、2、3…などの数字のソートは上手くいかない場合があります。そういう場合には上記の例のように001、002同じ桁数で0パディングしてからソートすると上手くいきます。
※sortOn()関数はオプションで並び替え方法を指定可能です。
sortOn(sortkey, 1);
sortOn(sortkey, Array.CASEINSENSITIVE);
sortOn(sortkey, 2);
sortOn(sortkey, Array.DESCENDING);
sortOn(sortkey, 4);
sortOn(sortkey, Array.UNIQUE);
sortOn(sortkey, 8);
sortOn(sortkey, Array.RETURNINDEXEDARRAY);
sortOn(sortkey, 16);
sortOn(sortkey, Array.NUMERIC);
投稿者 wing : 2005年12月05日 23:54