공부/javascript
2022.05.26 - javascript 랜덤 아이디 당첨 뽑기
기묜몬
2022. 5. 26. 13:09
친구가 당첨자 뽑기를 사이트 이용해서 하길래..
문득 내가 만들어볼까? 해서 시작했는데 쉽지않았음.ㅋㅋ.ㅋ.ㅋ.ㅋ...
완성본 허접함ㅠ
그리고 css적용도 안함 ㅎㅎ
==== 결과물 gif ====

[ HTML ]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<script defer src="./random.js"></script>
</head>
<body>
<div class="countBox">
<h1>아이디 랜덤 뽑기</h1>
<p>당첨 확인 :</p>
<button>뽑기</button>
</div>
</body>
</html>
[ JS ]
==> 풀이
원래는 로또번호처럼 no매겨서 숫자뽑기를 하면 어떨까 했는데, 이벤트 참여자들은 본인 아이디로 참여할테니
그냥 email 로 추첨하기로 했다.
1. 엑셀에 참여자 아이디를 쭉 적는다 (임의로 abc001~ 로 나열함)

2. vscode 에서 배열화 시킨다.
2-1) 배열화 시킬 내용을 vscode에 붙여넣는다.

2-2) command + [ f1 ] 배열화 한다.
^ (시작) -> ' 로 변경
$ (마지막) -> ', 로 변경

3) js 작성
const btn = document.querySelector("button");
const text = document.querySelector("p");
btn.addEventListener("click", function () {
var idArray = [
"abc001",
"abc002",
"abc003",
"abc004",
"abc005",
"abc006",
"abc007",
"abc008",
"abc009",
"abc010",
"abc011",
"abc012",
"abc013",
"abc014",
"abc015",
"abc016",
"abc017",
"abc018",
"abc019",
"abc020",
];
var rand = (Math.random() * idArray.length) | 0;
var rValue = idArray[rand];
text.textContent = rValue + "님 당첨입니다. ";
});
얼마전 풀었던 hex code 랜덤풀이를 참고해서 해봤는데,
클릭 버튼에 함수 적용하고, 텍스트 넣는게 아직 익숙하지않아서 조금 해맸다.
점점 익숙해지겠지~!
그래도 성공해서 기분좋다!