랜덤
[JS] 중복없는 특정 범위의 랜덤 숫자 배열
코드 예제 See the Pen Lotto Number by hyukson (@hyukson) on CodePen. Set 객체function getRandomNumber(max, min = 1) { return Math.floor(Math.random() * max) + min;}function getUniqueNumberList(count, max, min = 1) { const list = new Set(); while (count > list.size) { list.add(getRandomNumber(max, min)); } return [...list];}getUniqueNumberList(3, 10);// [4, 7, 9]Set 객체를 활용하면 중복된 값을 제거할 수 있..
[JS] 랜덤 날짜 생성하기
See the Pen Random Date by hyukson (@hyukson) on CodePen. 랜덤 한 수를 생성하는 방법은 Math.random() 메서드를 이용하면 임의의 값을 얻을 수 있습니다. end - start 날짜 수식을 통해 날짜의 차이 값을 구할 수 있습니다. 두 날짜 사이의 범위 function getRandomDate(start, end) { const startDate = start.getTime(); const endDate = end.getTime(); return new Date(startDate + Math.random() * (endDate - startDate)); } // 시작 날짜 ~ 종료 날짜 getRandomDate(new Date(2022, 1, 1), ..
[JS] 중복 없는 랜덤 고유한 값 생성하기
랜덤한 숫자를 생성하기 위해서는 Math.random() 메서드를 사용하면 간편하게 생성할 수 있습니다. 하지만 해당 메서드로는 고유한 값을 만들기에는 중복된 값이 나올 위험이 있습니다. 코드 // 현재 시간을 밀리초로 반환 new Date().getTime(); // 1초 = 1000밀리초 해당 코드는 Date 객체의 시간을 밀리초로 반환하는 getTime 메서드를 사용하여 고유한 값을 생성하는 코드입니다. // 난수와 합치기 new Date().getTime() + Math.random() 더욱 확실히 하기 위해서는 현재의 밀리초 시간에서 랜덤한 값을 더해주는 방법입니다. 관련 있는 글 https://gurtn.tistory.com/147 [JS] 랜덤 문자열 생성하기 자바스크립트에서 랜덤한 값을 얻..
[JS] 랜덤 문자열 생성하기
crypto.randomUUID()crypto.randomUUID()// '36eef6a2-e48c-4765-a800-ccb79c5ffa05';Crypto 객체는 JavaScript에서 암호화와 관련된 기능을 지원하는 객체입니다.crypto.randomUUID() 메서드는 함수명에서 알 수 있듯이 랜덤 한 UUID 값을 반환하는 메서드입니다. 첫 번째 코드자바스크립트에서 랜덤한 값을 얻기 위해서는 Math.random() 메서드를 사용하여 얻을 수 있습니다.하지만 해당 메서드를 이용하면 랜덤 한 숫자를 생성하지 문자를 만들지는 않습니다. 이때 사용하는 방법이 toString() 메서드를 이용하여 36진수로 표현하는 방법입니다. 첫 번째 코드Math.random().toString(36).substrin..
[JS] 배열 랜덤하게 섞기
첫 번째 코드 [1, 2, 3, 4, 5].sort(() => Math.random() - 0.5); Math.random 메서드는 0부터 1까지의 난수를 반환합니다. 이 때 0.5는 반환되는 난수의 중간 값입니다. 이를 이용하여 sort 메서드로 매번 랜덤 한 값으로 정렬시켜 섞어줍니다. 두 번째 코드 const getRandom = () => Math.floor(Math.random() * tmpArray.length); const tmpArray = [1, 2, 3, 4, 5]; const array = [...tmpArray].map(_ => tmpArray.splice(getRandom(), 1)[0]); console.log(array); tmpArray 배열에서 값을 랜덤 하게 하나씩 뽑아 ..