const winBalls = shuffle.slice(0, 6).sort((a, b) => a - b);
const bonus = shuffle[6];
console.log(winBalls, bonus);
setTimeout(() => {
showBall(bonus, $bonus);
}, 7000);
const showBall = (number, $target) => {
const $ball = document.createElement('div');
$ball.className = 'ball';
$ball.textContent = number;
if(number >=40){
$ball.style.backgroundColor = 'green';
}else if(number >= 30 ){
$ball.style.backgroundColor = 'blue';
}else if(number >=20 ){
$ball.style.backgroundColor = 'yellow';
}else if(number >=10){
$ball.style.backgroundColor = 'orange';
}else{
$ball.style.backgroundColor = 'red';
}
$target.appendChild($ball);
}
for (let i = 0; i < winBalls.length; i++) {
setTimeout(() => {
showBall(winBalls[i], $result);
}, (i+1)*1000);
}
setTimeout(() => {
showBall(bonus, $bonus);
}, 7000);
//settimeout의 콜백 함수 안에 든 i와 1000*(i+1)는 다른 시점에 실행
for (var i = 0; i < winBalls.length; i++) {
setTimeout(() => {
drawBall(winBalls[i], $result);
}, 1000 * (i + 1));
}
/*
i가 0일 때 setTimeout(콜백0, 1000) 실행
i가 1일 때 setTimeout(콜백1, 2000) 실행
i가 2일 때 setTimeout(콜백2, 3000) 실행
i가 3일 때 setTimeout(콜백3, 4000) 실행
i가 4일 때 setTimeout(콜백4, 5000) 실행
i가 5일 때 setTimeout(콜백5, 6000) 실행
i가 6이 됨
1초 후 콜백0 실행(i는 6)
2초 후 콜백1 실행(i는 6)
3초 후 콜백2 실행(i는 6)
4초 후 콜백3 실행(i는 6)
5초 후 콜백4 실행(i는 6)
6초 후 콜백5 실행(i는 6)
*/