정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하도록 solution 함수를 완성해보세요.
🚫제한 사항
1 ≤ array의 길이 ≤ 100
0 ≤ array 원소 ≤ 1,000
array에 중복된 숫자는 없습니다.
❗입출력 예
array | result |
[1, 8, 3] | [8, 1] |
[9, 10, 11, 8] | [11, 2] |
😀 내가 푼 답
const solution = (array) => {
return [Math.max(...array), array.indexOf(Math.max(...array))]
}
😊 문제풀이 답안 OR 다른사람들 답안
// 1
function solution(array) {
let max = Math.max(...array);
return [max, array.indexOf(max)];
}
// 2
function solution(array) {
return [Math.max(...array), array.findIndex(el => el === Math.max(...array))];
}
- findIndex()
- findIndex() 인스턴스 메서드는 제공된 Array의 테스트 함수를 충족하는 배열의 첫 번째 요소 인덱스를 반환함
- 만족하는 요소가 없으면 -1을 반환
- 2개의 인수를 취함
findIndex(testFn(element[, index[, array]])[, thisArg])
- testFn
- testFn은 요소가 발견되었음을 나타내는 true를 반환할 때까지 배열의 각 요소에 대해 실행하는 함수
- 3가지 인수를 사용함
- element -> 처리중인 배열의 현재 요소
- index -> 처리 중인 현재 요소의 인덱스
- 배열은 findIndex()가 호출된 배열
- thisArg
- thisArg는 콜백을 실행할 때 사용할 선택적 객체
- thisArg 인수를 생략하면 findIndex()함수는 undefined를 사용
- findIndex()는 testFn이 true를 강제 변환되는 값인 truthy값을 반환하는 항목을 찾을 때까지 배열의 모든 요소에 대해 testFn을 실행함
- findIndex()가 그러한 요소를 찾으면 즉시 요소의 인덱스를 반환함
'공부 > 코딩테스트' 카테고리의 다른 글
Q. 최대값 만들기(2) (0) | 2024.02.26 |
---|---|
Q. 주사위의 개수 (0) | 2024.02.26 |
Q. 인덱스 바꾸기 (0) | 2024.02.23 |
Q. 세균 증식 (1) | 2024.02.13 |
Q. 문자 반복 출력하기 (1) | 2023.12.08 |