자바스크립트에서 배열의 원소를 섞는 법


[0, 3, 3] -> [3, 0, 3]
[9, 3, 6, 0, 6] -> [0, 3, 6, 9, 6]
[3, 3, 6, 0, 6] -> [0, 3, 6, 3, 6]

이런식으로 자바스크립트를 써서 배열의 원소를 섞고싶어요. 어떻게 하면 좋을까요?

  • 2016년 03월 01일에 작성됨

조회수 361


1 답변


좋아요
0
싫어요
채택취소하기
function shuffle(a) {
    var j, x, i;
    for (i = a.length; i; i -= 1) {
        j = Math.floor(Math.random() * i);
        x = a[i - 1];
        a[i - 1] = a[j];
        a[j] = x;
    }
}

이렇게 정의하셔서

var myArray = ['1','2','3','4','5','6','7','8','9'];
shuffle(myArray);

이렇게 쓰시면 됩니다.

  • 2016년 03월 01일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close