Java Script

배열의 0번째 요소부터 마지막 요소까지 모두 더하기 (for문, reduce, 재귀함수)

책먹는아인 2021. 10. 8. 23:37

숫자로만 이루어진 배열이 있을 때, 배열의 처음부터 끝까지 모두 합산하는 코드인데 3가지 방식으로 짤 수 있다.

첫째는 for문을 사용

두번째는 reduce라는 array의 메소드를 사용

세번째는 재귀함수 방식을 이용하는 것이다.

코드와 실행결과는 아래와 같다.

 

지금은 내일 pair준비하기 바빠서 자세한 설명은 생략한다.

 

 

 

 

<복사 & 붙여넣기용 소스>

 

// 1번 - for문

function arrSum1(arr) {

    let sum = 0;

    for (let i = 0; i < arr.length; i++) {

        sum += arr[i];

    }

    return sum;

}

 

// 2번 - reduce 활용

function arrSum2(arr) {

    return arr.reduce((acc, cur) => acc + cur);

}

 

// 3번 - 재귀함수

function arrSum3(arr) {

    if (arr.length === 0) {

        return 0;

    }

    return arr.shift() + arrSum3(arr)

}

 

 

let arr = [ 1, 2, 3, 4, 5, 6 ]

 

// 각 함수의 실행결과

arrSum1(arr) // 1번 for문

arrSum2(arr) // 2번 reduce활용

arrSum3(arr) // 3번 재귀함수