자바 스크립트에서 여러 배열을 섞으려고했지만 같은 방법으로 시도하고 있습니까?
var array1 = [1,2,3,4,5];
var array2 = [6,7,8,9,10];
그래서 각 배열은 무작위로 같은
나는 둘 사이에 줄 바꿈을 원하는 반환에 또한4,2,3,5,1
7,9,6,8,10
로 단행 반환하는 동일한 기능이 두 배열을 셔플 할
, 도와주세요?
자바 스크립트에서 여러 배열을 섞으려고했지만 같은 방법으로 시도하고 있습니까?
var array1 = [1,2,3,4,5];
var array2 = [6,7,8,9,10];
그래서 각 배열은 무작위로 같은
나는 둘 사이에 줄 바꿈을 원하는 반환에 또한4,2,3,5,1
7,9,6,8,10
로 단행 반환하는 동일한 기능이 두 배열을 셔플 할
, 도와주세요?
간편한 액세스를 위해 Array.prototype
에 셔플 방법 추가 - 원본을 변경하지 않고 수정 된 배열을 반환합니다.
Array.prototype.shuffle = function() {
var rIndex, temp,
input = this.slice(0),
cnt = this.length;
while (cnt) {
rIndex = Math.floor(Math.random() * cnt);
temp = input[cnt - 1];
input[cnt - 1] = input[rIndex];
input[rIndex] = temp;
cnt--;
}
return input;
}
var array1 = [1, 2, 3, 4, 5];
var array2 = [6, 7, 8, 9, 10];
document.getElementById('shuffle-btn').onclick = function(){
document.getElementById('output').innerHTML = [array1.shuffle(), array2.shuffle()].join('\n');
}
<button id="shuffle-btn">Shuffle</button>
<pre id="output"></pre>
첫째, 그것을 찾기 위해 스택 오버 플로우에 '셔플 배열'을 검색합니다. 두 번째로 출력은'document.body.innerHTML = array1.join (',') + '
'+ arrat2.join (',')'와 같이 간단합니다. 됐어. 이 두 가지 모두 작은 사이트를 통해이 사이트에서 쉽게 찾을 수 있습니다. – somethinghere
@somethinghere OP에'document.body.innerHTML ='을 말하지 마십시오. 그들의 포스트에있는 어떤 것도 그들이 전신 HTML을 그 데이터로 대체하고 싶다고 제안하지 않았습니다. – itamar
@itamar이 게시물의 아무 것도 실제로는 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _를 출력합니다. 저는'document.body'를 사용하여 적어도 작업 할 수있는 예제를 가지고 있고 이것이 얼마나 간단한지를 보여줍니다 (나는 이것을 할 수있는 유일한 방법이 아닌 _'s something something'_이라고 말했습니다.). 여하튼, 이것은 나의 요점이 아니었다. 이 두 가지 모두이 사이트에서 쉽게 찾을 수 있습니다. 그리고 아니, 나는 트롤링하지 않습니다. – somethinghere