Показать сообщение отдельно
  #8 (permalink)  
Старый 25.12.2015, 17:31
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

рони, ++
Да, скоростью я был удивлён еще в табличке
================
Вариант рандомного массива без повторений с вызовом Math.random() единожды на каждый элемент:
function indRand(lng){
     var a = [],i,out=[],n=lng;
     for(i=0;i<lng;i++)a[i]=i;
     while (n--)out.push(a.splice(Math.floor((n+1)*Math.random()),1)[0]);
     return out;
  }

 var arr = [],ind = indRand(20),k;
 for(i=0;i<20;i++) arr[i]=ind[i]%(k=i<10?20:3);

 alert(arr)
 alert(arr.join(''))

Последний раз редактировалось Deff, 26.12.2015 в 16:26.
Ответить с цитированием