문제 1

정수 배열 numbers와 정수 num1, num2가 매개변수로 주어질 때, numbers의 num1번 째 인덱스부터 num2번째 인덱스까지 자른 정수 배열을 return 하도록 solution 함수를 완성해보세요.

 

▶ 내가 푼 방식

//내가 작성한 코드
function solution(numbers, num1, num2) {
    return numbers.slice(num1, num2+1);
}

 

 다른 유저가 푼 방식

// 유저 1 : 처음 보는 함수 splice
function solution(numbers, num1, num2) {
    return numbers.splice(num1, num2-num1+1);
}

// 유저 2 : 자르기 보다는 해당부분에 값을 덮어씌운 방식
function solution(numbers, num1, num2) {
    var answer = [];

    for (let i = num1; i < num2+1; i++) {
        answer.push(numbers[i])
    }

    return answer;
}

 

 배운 것들

     - splice:
         이 함수는 첫 번째 인자로 시작 인덱스를 받고, 두 번째 인자로는 몇 개를 삭제할 건지를 받는다.
         그 후삭제된 값들이 담긴 배열을 retrun 한다.
        이 문제에서 splice 함수를 이용하면 num1 부터 시작하여 num2 개를 삭제하게된다. 
        "num1 번째 부터 num2번째 까지 잘라라는 문제"에 맞추어 "num2 - num1 + 1" 을 입력하여 원하는 결과를 얻었다.

     -  남들과 다르게 풀려다 보니 다양한 방식의 답들이 나오는 것 같다....
    

+ Recent posts