Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.12.2013, 15:42
Новичок на форуме
Отправить личное сообщение для SWin Посмотреть профиль Найти все сообщения от SWin
 
Регистрация: 03.12.2013
Сообщений: 8

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 ]

Не могу понять, где ошибки.

Последний раз редактировалось SWin, 06.12.2013 в 17:00.
Ответить с цитированием
  #2 (permalink)  
Старый 06.12.2013, 15:51
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,213

Сообщение от SWin
Есть массив
var NumArray = [ 1, 2, 3, 4, 5 ]
.
Из него нужно сделать случайным образом перемешанный
массив
var randomNumArray
,
например
var NumArray = [ 3, 5, 1, 4, 2 ]
Дык!
Ответить с цитированием
  #3 (permalink)  
Старый 06.12.2013, 17:01
Новичок на форуме
Отправить личное сообщение для SWin Посмотреть профиль Найти все сообщения от SWin
 
Регистрация: 03.12.2013
Сообщений: 8

ksa,
Да, видимо я тупой...
Кто-то может подсказать, где ошибки в исходном коде?
Ответить с цитированием
  #4 (permalink)  
Старый 07.12.2013, 00:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

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);
Ответить с цитированием
  #5 (permalink)  
Старый 07.12.2013, 00:57
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

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
Ответить с цитированием
  #6 (permalink)  
Старый 07.12.2013, 01:07
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Poznakomlus,
на всякий случай в вашем варианте и исправленном мною варианте SWin, нет хорошего разнообразия
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить javasript массив из php? dima_tr AJAX и COMET 6 01.02.2013 03:37
Взять ID у чекбоксов и загнать в массив bohdantheone Общие вопросы Javascript 9 12.01.2012 03:42
Создать массив не содержащие данные другого масива KamalovRadik Общие вопросы Javascript 1 05.09.2011 03:30
Как создать многомерный массив FRIE Общие вопросы Javascript 29 02.06.2010 19:14
Подскажите, как вернуть js-скрипт массив Polkan AJAX и COMET 18 30.04.2010 23:30