Просмотр полной версии : как пермешать элементы массива???
unclefucker
09.12.2005, 22:30
как пермешать элементы массива в случайном порядке???
function move(target_array:Array,old:Number,new:Number):Object {
var l:Number = target_array.length-1;
var d:Number = 1-new;
new = (d > l) ? l+new : ((d<0) ? l : new);
var result:Object = (target_array[new] == undefined) ? null:target_array[new];
target_array.splice(new,0,target_array.splice(old,1)[0]);
return result;
}
Можно еще так:
s = function (a, b) {
var r;
Math.floor (Math.random () * 2) == 0 ? r = 1 : r = -1;
return r;
};
///////////////////
arrayA = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
trace (arrayA);
arrayA.sort (s);
trace (arrayA);
unclefucker
13.12.2005, 12:38
Да, спасибо! Всё получилось. Хотя, честно говоря, не очень понял, как это всё работает. Я про второй вариант.
про второй вариант - метод sort позволяет задавать свою функцию сравнения элементов, т.е. какой элемент больше ты вычисляешь по своим условиям
unclefucker
13.12.2005, 21:18
Ну теперь всё разжевали!!!
Всем спасибо за внимание.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.