(랜덤 게임이라 쓰고 Math 메소드 연습이라 읽는다)
function getRandomNumber (min, max) {
let randomGame = (Math.random() * (max - min) + min);
// let randomGame = Math.random() * (max * min);
// 마무리로 Math.floor를 적용시 검사 통과 안됐다.
return randomGame;
}
console.log(getRandomNumber(1, 6));
let randomGame = (Math.random() * (최대값 - 최소값) + 최소값);
처음엔 Math.random() * (최대값 x 최소값)으로 진행했다.
이렇게 해도 결국 최대값의 범위로 만들어지겠거니 싶었기 때문이다.
그리고 이게 얼마나 바보같은 코드였는가 깨닫기까지
긴 시간이 걸리지 않았다.
애초에 랜덤 게임이라는 게 랜덤한 값을 받아와서 진행하는 거다.
최대값과 최소값 둘 중 하나가 0일 수도 있다는 말이다.
두 값 중 하나의 값에 0이 나온다면 최대값 x 최소값 = 0 이 되고,
Math.random() * (최대값 x 최소값) = 0이 되어
결국 랜덤 게임이 아닌 제로 게임이 될 수도 있다.
이러한 이유로
let randomGame = (Math.random() * (최대값 - 최소값) + 최소값);
을 사용해 randomGame을 리턴해줘 문제를 해결했다.