
JavaScript에서 난수를 생성하고 정수로 변환하는 방법은 매우 유용합니다. 특히 게임 개발이나 랜덤 요소가 필요한 기능을 만들 때 자주 사용됩니다. 이번 글에서는 Math.random()과 Math.floor()의 개념과 함께 실제 활용 예제를 살펴보겠습니다.
Math.random() – 랜덤 숫자 생성하기Math.random()은 0 이상 1 미만(0 ≤ x < 1)의 난수를 반환하는 함수입니다.
console.log(Math.random()); // 0.123456789 (실행할 때마다 다른 값이 출력됨)
console.log(Math.random()); // 0.987654321
이 함수는 항상 0과 1 사이의 실수를 반환합니다. 정수를 얻기 위해서는 추가적인 연산이 필요합니다.
Math.floor() – 내림(round down) 처리하기Math.floor(x)는 x를 내림(round down) 하여 가장 가까운 정수로 변환합니다.
console.log(Math.floor(5.9)); // 5
console.log(Math.floor(2.3)); // 2
이제 Math.random()과 Math.floor()를 조합하여 랜덤 정수를 생성하는 방법을 알아보겠습니다.
Math.random() + Math.floor() – 랜덤 정수 생성하기0부터 7까지의 랜덤한 정수를 얻고 싶다면 다음과 같이 작성할 수 있습니다:
let randomNumber = Math.floor(Math.random() * 8);
console.log(randomNumber); // 0~7 사이의 정수 출력
Math.random()이 0과 1 사이의 소수를 생성합니다.Math.random() * 8을 하면 0 이상 8 미만(0 ≤ x < 8)의 소수가 됩니다.Math.floor()를 사용하여 소수를 내림하여 정수로 변환합니다.1부터 10까지의 랜덤한 정수를 얻고 싶다면 다음과 같이 작성할 수 있습니다:
let randomInt = Math.floor(Math.random() * 10) + 1;
console.log(randomInt); // 1~10 사이의 정수 출력
Math.floor(Math.random() * (최댓값 - 최솟값 + 1)) + 최솟값
예제: 5부터 15 사이의 랜덤 정수 생성
let min = 5;
let max = 15;
let randomBetween = Math.floor(Math.random() * (max - min + 1)) + min;
console.log(randomBetween); // 5~15 사이의 정수 출력
Math.random()과 Math.floor()를 조합하면 다양한 범위의 랜덤 정수를 손쉽게 생성할 수 있습니다. 이를 활용하면 게임, 로또 번호 생성기, 랜덤 색상 선택 등의 기능을 구현할 수 있습니다.
이제 직접 실습해 보면서 랜덤 숫자를 활용해 보세요! 🎲