Как отсортировать индексированный массив и поддерживать ассоциацию индексов в ActionScript 3.0. Array.sort(); метод, кажется, переиндексирует массив независимо от того, что. В принципе мне нужно воссоздать php-функцию arsort в ActionScript. Возможное?arsort with Actionscript 3
0
A
ответ
3
Для этого вам понадобится ассоциативный массив (т.е. Object
), потому что, когда индексы являются целыми числами вспышки автоматически изменять порядок их от 0 до п как вы, возможно, заметили (Это может быть очень раздражает в вашем случае, но имеет свои причины).
Если вы хотите, чтобы отслеживать ключевые ценности, хак для хранения индексов в значении для каждого элемента массива:
var array:Object = new Array();
array.push({index:0,name:"Tom"});
array.push({index:1,name:"Andrew"});
array.push({index:2,name:"Mark"});
array.sortOn("name");
for each(var item:Object in array)
trace(item.index, item.name);
Это след:
1 Andrew
2 Mark
0 Tom
Н.Б. Это можно улучшить, если ваши значения сильные, напечатанные в Vector
вместо Array
.
0
Я думаю, вы можете искать http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/Array.html#sortOn()
Perfect. Благодаря! – typeoneerror