Цитата:
Сообщение от toFL
В ArrayTool:
 Код AS3:
public static function sortArrayByRandom(array:Array):Array {
var arrayToRandom:Array=array;
for (var i:uint = 0; i < arrayToRandom.length; i++) {
var randomNumber:uint=int(Math.random()*arrayToRandom.length);
arrayToRandom.push( arrayToRandom.splice( randomNumber, 1 )[0] );
}
return arrayToRandom;
}
Заменил бы на:
 Код AS3:
public static function sortArrayByRandom(array:Array):Array {
function run (a:*, b:*) {return Math.random() > 0.5 ? -1 : 1;}
return array.sort(run);
}
P.S. Мой метод в 2.5 раза быстрее! )
|
первый вариант кода, я б не стал использовать, и не стал бы разбираться, потому что надо думать как оно работает и зачем, второй, не смотря, что не нравятся такие подходы (в виде анонимных функций), мне больше по душе из 2х представленных вариантов.