[Lv.0] 카운트 업

woodstock·2023년 9월 28일
0

코딩테스트

목록 보기
2/56
post-thumbnail

카운트 업

문제설명

주어진 두 정수 start_numend_num 사이의 모든 숫자를 순서대로 포함하는 배열을 반환하는 함수를 작성한다.

반복문 또는 반복에 관련된 메서드의 활용

이 문제는 주어진 범위 start_num부터 end_num까지의 모든 숫자를 순차적으로 배열에 추가하기 위해 반복문 또는 반복에 관련된 메서드를 활용할 수 있다.

반복을 통해 주어진 범위 내의 각 숫자를 배열에 추가한다.

풀이

반복문

function solution(start_num, end_num) {
    let answer = [];
    for(let i = start_num; i <= end_num; i++){
        answer.push(i);
    }
    return answer;
}

반복에 관련된 메서드

function solution(start, end) {
    return Array.from({length: end - start + 1}, (_, i)=> i + start);
}

코드 분석

배열 생성 및 초기화

Array.from()

Array.from() 메서드는 유사 배열 객체나 반복 가능한 객체를 얕게 복사하여 새로운 Array 인스턴스를 만든다.

예시

Array.from('hello'); // ["h", "e", "l", "l", "o"]

Array.from({length: 5}, (_, i) => i;) // [0, 1, 2, 3, 4]

배열 크기 설정

{length: end - start + 1}

start부터 end까지의 숫자를 포함하는 배열의 크기를 결정한다.

맵핑 함수를 사용한 요소 값 설정

(_, i) => i + start;

Array.from()의 두 번째 인자로 제공되는 함수이다.
이 함수는 배열의 각 요소를 start부터 end까지의 숫자로 설정한다.

여기선 첫 번째 매개변수 _는 현재 배열 요소의 값을 나타내지만, 이 문제에서는 사용되지 않는다.

두 번째 매개변수 i는 현재 요소의 인덱스를 나타낸다.

profile
해내는 사람

0개의 댓글