random массив
Код (нерабочий):
var NumArray = [ 1, 2, 3, 4, 5];
var array = [], counter = NumArray.length, j;
for ( var z=counter; z>0; z--)
{j = Math.floor(Math.random() * z);
array.push(NumArray.splice(j, 1)[0]);
};
var randomNumArray = array;
Есть массив var NumArray = [ 1, 2, 3, 4, 5 ]. Из него нужно сделать случайным образом перемешанный массив var randomNumArray, например var NumArray = [ 3, 5, 1, 4, 2 ] Не могу понять, где ошибки. :help: |
Цитата:
|
ksa,
Да, видимо я тупой... Кто-то может подсказать, где ошибки в исходном коде? |
SWin,
var NumArray = [ 1, 2, 3, 4, 5];
var array = [], counter = NumArray.length-1, j;
for ( var z=counter; z>=0; z--)
{j = Math.floor(Math.random() * NumArray.length);
array.push(NumArray.splice(j, 1)[0]);
};
var randomNumArray = array;
alert(randomNumArray);
|
var a = [ 3, 5, 1, 4, 2 ].sort(function() {return 0.5 - Math.random()});
alert(a);
http://javascript.ru/Array/sort http://javascript.ru/Math.random |
Poznakomlus,
на всякий случай в вашем варианте и исправленном мною варианте SWin, нет хорошего разнообразия |
| Часовой пояс GMT +3, время: 22:14. |