반응형
1. Math.random()
Math.random() 는 0이상 1미만의 구간에서 난수를 생성하는 메서드
//기본 문법
Math.random();
//출력예시
document.write(Math.random()); // => 0.9751258465223
2. Math.random() 사용법
- 두 값 사이의 난수 생성하는 법 (min보다 크거나 같으며 max보다 작다)
Math.random() * (max - min) + min;
document.write(Math.random()*( 10 - 1 ) + 1 ); // =>출력예시 9.7584512223
- 두 값 사이의 난수 정수 생성하는 법 (min보다 크거나 같으며 max보다 작다)
Math.floor() 는 주어진 숫자와 같거나 더 작은 정수중에서 가장 큰 값을 반환
Math.floor( Math.random() * (max - min) ) + min;
document.write(Math.floor( ( Math.random() * (10 - 1) + 1 ) ) ); // 출력예시 => 2
Math.random() 의 경우 암호학적으로 안전한 난수를 제공하지 않기 때문에
MDN의 메소드를 보면 Web Crypto API의 window.crypto.getRandomValues() 이용을 권장한다.
3. Crypto.getRandomValues() 메서드로 암호학적으로 강력한 난수를 생성하기
Crypto.getRandomValues() 메서드는 메서드는 암호학적으로 강력한 난수를 생성할 수 있다.
//기본 문법
cryptoObj.crypto.getRandomValues(typedArray)
typedArray로는 Int8Array, Uint8Array, Uint8ClampedArray, Int16Array, Uint16Array, Int32Array, Uint32Array, BigInt64Array, BigUint64Array 중 사용하면 된다.
참고: https://developer.mozilla.org/ko/docs/Web/API/Crypto/getRandomValues
console 실행예시
4. Math.random() 과 getRandomValues() 비교
두 메소드의 차이점이 정리된 블로그도 참고해보세요.
반응형
'Java script' 카테고리의 다른 글
자바스크립트-프로토타입2_자바스크립트와 객체 지향 프로그래밍 (0) | 2022.09.19 |
---|---|
JavaScript_자바스크립트 Math.random() 활용-랜덤 뽑기 (0) | 2022.09.08 |
JavaScript_프로토타입1 (0) | 2022.08.16 |
Javascript_이메일 형식 확인 정규식, 핸드폰 번호 형식 자동 적용 정규식 (0) | 2022.08.09 |
JavaScript_두 INPUT 값 자동 합산 구현/ 숫자만 입력되도록 구현 하는 방법 (0) | 2022.08.08 |