본문 바로가기
개발(Development)/JS(자바스크립트)

[JS] 배열에서 랜덤으로 요소 추출하는 초간단 방법 (코드 1줄)

by 카레유 2023. 8. 23.

# JavaScript - 배열 요소 랜덤 추출 방법

자바스크립트의 배열의 요소를 랜덤으로 추출하는 코드는

아래의 코드 한 줄 짜리 함수로 쉽게 구현 가능하다.

 

const getRandomElement = (arr) => arr[Math.floor(Math.random() * arr.length)];

const 당첨자명단 = ["Teddy", "Jennifer", "Nicole", "Brad", "Tom"];

getRandomElement(당첨자명단); // 랜덤으로 한명씩 나옴

 

작동원리는 다음과 같다:

 

  • Math.random()은 [0이상, 1미만) 사이의 랜덤한 소수를 반환한다.
  • 여기에 배열의 요소 수(length)를 곱해주면, [0이상, 배열의 요소 갯수 미만) 사이의 랜덤한 소수가 반환된다.
  • Math.floor()으로 소수점을 자르는 "내림" 을 해주면, [0이상, 배열의 최대 인덱스] 사이의 랜덤한 "정수"가 반환된다.
  • 결과적으로 [배열의 시작 인덱스, 종료 인덱스] 사이의 랜덤한 정수로 배열의 요소를 추출하여 반환한다.

 

매번 코드를 작성하기 보단, 함수로 만들어두고 쓰면 유용할 것 같다.

 

 

댓글