[ Array에서 min, max 원하는 값 얻기 ]
const nums = [1, 2, 3]
Math.min(nums) // NaN
Math.max(nums) // NaN
숫자의 배열을 가지고 있고 그 안의 최소값과 최대값을 찾을때
Math.min, Math.max 메서드에 배열을 넘기면 원하는 값이 나오지 않음
이유는 Math.min 또는 Math.max 함수는 배열이 아니라 고유한 변수를 기대하기 때문에 결과값으로 NaN이 나오게 됨
그래서 숫자의 배열을 가지고 있고 그 안에서 최소값과 최대값을 찾고자 한다면 다음과 같은 방법을 사용하면 됨
▶ apply 사용
let nums = [1, 2, 3]
Math.min.apply(Math, nums) // 1
Math.max.apply(Math, nums) // 3
Math.min.apply(null, nums) // 1
Math.max.apply(null, nums) // 3
▶ destructing 할당 이용
const nums = [1, 2, 3]
Math.min(...nums) // Math.min(1, 2, 3), 1
Math.max(...nums) // Math.max(1, 2, 3), 3
'JS' 카테고리의 다른 글
JS, 호이스팅 (0) | 2023.06.15 |
---|---|
JS, slice와 splice (0) | 2023.06.10 |
JS, map & filter & reduce (0) | 2023.05.30 |
JS, 문자를 숫자로& 숫자를 문자로 (0) | 2023.05.30 |
JS, 문자 혹은 문자열 찾기 (0) | 2023.05.27 |
댓글