2020. 8. 8. 14:33
반응형
자바스크립트 배열을 섞을 필요가 있을 때가 있다.
전에 만들어둔 내용도 있는데 다시 만들어봤다.
Array.prototype.map, Array.prototype.sort 기능을 활용했다.
기존 배열:
새로운 배열:
<div>기존 배열: <span id="originalArr"></span></div>
<button id="getRandom">getRandom</button>
<div>새로운 배열: <span id="newArr"></span></div>
<script>
$(function(){
var originalArr = [1, 2, 3, 4, 5, 6, 7, 8];
$("#originalArr").text(originalArr.join(","));
$("#getRandom").click(function(){
var newArr = getRandomArray(originalArr);
$("#newArr").text(newArr.join(","));
});
});
function getRandomArray(arr) {
var newArray = arr.map(function(x){
return {o:x, r:Math.random()};
}).sort(function(a,b){
return a.r > b.r ? 1 : a.r < b.r ? -1 : 0;
}).map(function(x){
return x.o;
});
return newArray;
}
</script>
반응형
'dev' 카테고리의 다른 글
[JavaScript] input 숫자만 입력하도록 하기 (0) | 2022.04.15 |
---|---|
[JavaScript] 자식창에서 부모창의 변수 이용하기 (0) | 2021.08.30 |
[JavaScript] 카카오톡 대화내용 백업파일 뷰어 (0) | 2021.05.30 |
[JavaScript] Email validation (0) | 2020.12.19 |
[JavaScript] 배열 내의 요소들의 합계 구하기 (0) | 2020.07.29 |
[C#] ASP.NET Core 패스워드 암호화 (0) | 2020.06.21 |
[Link] 온라인 C# 컴파일러 (0) | 2020.02.27 |
[ASP.NET Core] 파일 업로드 기능 구현 (ajax, 멀티) (0) | 2020.02.26 |