JS 랜 덤 으로 배열 을 흐 트 러 뜨리 는 방법

9004 단어 배열
JS 가 무 작위 로 배열 을 흐 트 러 뜨리 는 방법 예제 생 성
방법 1: 코드 를 가장 간단하게 흐 트 러 뜨리 는 방법
// An highlighted block
var arr = [4,1,67,12,45,121,3];
arr.sort(function() {
    return (0.5-Math.random());
});
console.log(arr);

sort () 함 수 를 소개 합 니 다. JS 에 Array 대상 에 함수 가 내장 되 어 있 습 니 다.
arrayobj.sort([sortfunction])
이 방법 은 Array 대상 을 적당 한 정렬 합 니 다.실행 중 새로운 Array 대상 을 만 들 지 않 습 니 다.
sort Function 을 선택 할 수 있 습 니 다.
원소 의 순 서 를 정 하 는 함수 의 이름 입 니 다.이 인자 가 생략 되면 요 소 는 ASCII 문자 순서에 따라 오름차 순 으로 배 열 됩 니 다.sort Function 방법 에는 두 개의 인자 가 있 습 니 다.각각 정렬 비교 할 때마다 두 개의 배열 항목 을 대표 합 니 다.sort () 정렬 할 때 두 개의 배열 항목 을 비교 할 때마다 이 매개 변 수 를 다시 실행 하고 두 개의 비교 배열 항목 을 매개 변수 로 이 함수 에 전달 합 니 다.함수 반환 값 이 1 일 때 두 배열 항목 의 순 서 를 교환 합 니 다. 그렇지 않 으 면 교환 하지 않 습 니 다.
방법 2: 이 방법 은 비교적 난잡 하 게 친다.
var Arr = [4,1,67,12,45,121,3];
function randArr(arr) {
    for (var i = 0; i < arr.length; i++) {
        var iRand = parseInt(arr.length * Math.random());
        var temp = arr[i];
        arr[i] = arr[iRand];
        arr[iRand] = temp;
    }
    return arr;
}
//  :
console.log(randArr(Arr));

무 작위 재생 목록 사례 는 먼저 명확 해 야 합 니 다. 재생 목록 을 어 지 럽 히 는 전 제 는 원래 배열 을 변경 할 수 없습니다.
//  min max         [5,100];
function getRandomInt(min,max){
	return Math.floor(Math.random()*(max-min+1))+min;
}

//    
function shuffle(arr){
	let _arr = arr.slice(); //slice         ,  splice       arr  
	for (let i = 0; i<_arr.length; i++;){
		let j = getRandomInt(0,i);
		let t = _arr[i];
		_arr[i] = _arr[j];
		_arr[j] = t;
	}
	return _arr;
}

좋은 웹페이지 즐겨찾기