비

중복 없는 랜덤 배열

기본형
 
<script>
myArray=[1,2,3,4,5,6,7];
for(i=myArray.length;i>0;i--)myArray.push(myArray.splice(Math.floor(Math.random()*i),1));
document.write(myArray);
</script>
 
-----------
 
응용형

<script>
totalN=45;
choiceN=6;
myArray=[];
for(i=1;i<=totalN;i++)myArray.push(i);
for(j=0;j<choiceN;j++)myArray.push(myArray.splice(Math.floor(Math.random()*(totalN-j)),1));
myArray=myArray.slice(-choiceN);
document.write(myArray);
</script>
 
딱 그 갯수만큼만 돌리기 때문에 소스에 공회전이 없습니다.
|

댓글 2개

잘 활용할께요
필요했었는데 늘감사합니다 ^^
댓글을 작성하시려면 로그인이 필요합니다.

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요. 나누면 즐거움이 커집니다.

+
제목 글쓴이 날짜 조회
11-08-22 조회 5,638
11-08-22 조회 4,609
11-08-22 조회 6,423
11-08-20 조회 8,765
11-08-19 조회 9,639
11-08-18 조회 4,374
11-08-18 조회 5,736
11-08-16 조회 9,454
11-08-11 조회 8,326
11-08-10 조회 6,538
11-08-10 조회 6,642
11-08-09 조회 3,544
11-08-09 조회 7,022
11-08-08 조회 3,687
11-08-08 조회 5,150
11-08-08 조회 7,056
11-08-08 조회 7,271
11-08-05 조회 4,021
11-08-01 조회 6,242
11-07-28 조회 4,849