자바스크립트에서 랜덤한 난수를 발생시키기 위해 Math.random 메서드를 사용한다. 이 메서드는 0에서 1사이의 랜덤하게 발생한 소숫점이 있는 수를 만든다. 그렇기에 최소값, 최대값을 이용하여 난수를 만들고, 소숫점을 제거하면 된다. 참고로 단순히 소숫점을 제거하는 메서드는 Math.trunc 메서드이다.
자바스크립트 랜덤한 난수 발생
using javascript random number
랜덤하게 난수를 발생시키는 것은 여러가지 상황에서 사용한다.
자주 사용되진 않겠지만, 특정한 부분에서 사용할 수 있다.
자바스크립트는 Math.random 메서드를 이용하여 난수를 만들 수 있다.
기본적인 난수 발생은 0 ~ 1 사이의 값만 발생시킨다.
Math.random 난수 발생
랜덤하게 난수를 발생시키기 위해 Math.random 메서드를 사용한다.
단순히 랜덤수를 발생시킬 수도 있지만 특정 범위의 랜덤수를 발생시키려면 수식의 사용이 필요하다.
기본적인 출력값은 0에서 1사이의 소숫점이 들어간 수가 랜덤으로 발생되는데, 소숫점을 제거하기 위해 Math.trunc 메서드를 같이 사용하는 것이 좋다.
// 난수 발생
Math.random()
// 난수 발생 - 최대값 : 0 ~ 최대값
Math.random() * 최대값
// 난수 발생 - 범위 지정
Math.trunc((Math.random() * (최대값 - 최소값)) + 최소값)
샘플코드
위의 공식으로 난수를 발생하는 자바스크립트 예제를 만들어 본다.
처음에는 일반적인 난수를 만들어 본 후 범위를 지정하여 난수를 작성해 본다.
<!DOCTYPE html>
<html>
<body>
<script>
console.log('----------');
let _randomNumber;
let _randomMin = 50;
let _randomMax = 100;
// 난수 발생
_randomNumber = Math.random();
console.log("난수 발생 : %s ", _randomNumber);
// 난수 발생 - 최대값 : 0 ~ 최대값
_randomNumber = Math.random() * _randomMax
console.log("0 ~ 최대값(100) : %s ", _randomNumber);
_randomNumber = Math.trunc(_randomNumber);
console.log("0 ~ 최대값(100) : %s ", _randomNumber);
// 난수 발생 - 범위 지정
_randomNumber = (Math.random() * (_randomMax - _randomMin)) + _randomMin;
_randomNumber = Math.trunc(_randomNumber);
console.log("최소값(50) ~ 최대값(100) : %s ", _randomNumber);
console.log('----------');
/* */
</script>
</body>
</html>
코드가 길지만 수식만 잘 보면 된다.
Math.random 의 특징은 0에서 1까지의 소숫점을 포함한 난수를 발생시킨다는 점을 주목하자.
그렇기에 최소값, 최대값에 대한 범위 지정시 수식이 조금 난해해 질 수 있다.
결과 화면을 보자.
50에서 100 사이의 값이 난수로써 잘 나오고 있다.
'programming > javascript' 카테고리의 다른 글
자바스크립트 밑이 있는 로그함수 사용 using javascript based log method (0) | 2022.03.22 |
---|---|
자바스크립트 로그함수의 사용 using javascript log method (0) | 2022.03.21 |
자바스크립트 최소값 최대값 찾는 방법 Math.min Math.max method (0) | 2022.03.14 |
자바스크립트 삼각함수 sin cos tan 메서드 사용 using javascript trigonometric functions method (0) | 2022.03.12 |
자바스크립트 거듭제곱 제곱근 절대값 구하기 javascript Math pow sqrt abs method (0) | 2022.03.08 |
댓글