728x90
# 문제 12 (배열 뒤집기)
정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.
# 답안
// 1. 입력: num_list -> 배열 [1,2,3] 같은거
// 2. 출력: num_list의 원소의 순서를 거꾸로 뒤집은 배열 [3,2,1] 같은거
// 방법1) for 반복문 사용
function solution(num_list) {
const answer = [];
for(let i=num_list.length-1; i >= 0; i--){
answer.push(num_list[i]);
}
return answer;
}
// 방법2) reverse() 사용 -> 원본 배열이 변형된다.
function solution(num_list) {
const answer = num_list.reverse();
return answer;
}
// 방법3) 원본 배열을 복사한 뒤 reverse() 사용하기 -> 원본 배열이 그대로 유지된다.
function solution(num_list) {
const answer = [...num_list].reverse();
return answer;
}
# 인사이트
// reverse()를 사용하면 배열을 뒤집을 수 있다.
// reverse() 함수는 이 함수를 호출한 배열을 거꾸로 뒤집고, 그 배열을 가리키는 참조값을 반환
// 따라서, 이 함수를 실행시키면 원본 배열이 변형된다.
// 원본 배열은 그대로 유지하고, 리턴되는 값만 변경하고 싶을 때는 원본 배열을 복사해서 사용하면 된다.
// spread operator(전개 연산자)를 사용하면 배열을 복사할 수 있다.
// spread operator(전개연산자)는 배열이나 객체에서 element들을 꺼내어, 복사해준다.
728x90
'Coding Test > Programmers' 카테고리의 다른 글
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 14 - 배열 원소의 길이) (0) | 2024.01.30 |
---|---|
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 13 - 머쓱이보다 키 큰 사람) (0) | 2024.01.30 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 11 - 배열의 평균값) (0) | 2024.01.30 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 10 - 짝수의 합) (0) | 2024.01.30 |
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 9 - 각도기) (0) | 2024.01.30 |