ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Javascript] Array.reduce 문법
    코딩공부 2022. 5. 13. 17:26
    728x90
    반응형

    구문

    arr.reduce(callback[, initialValue])

    callback은 4가지 인수를 받을 수 있습니다.

    • accumulator
    • currentValue
    • currentIndex
    • array

    예제_1

    [1,2,3,4,5].reduce((accumulator, currentValue)=>accumulator + currentValue);
    // initialValue 없는 경우

     

    과정

    1번째 호출 accumulator : 1 / currentValue : 2 / currentIndex : 1 return : 3

    2번째 호출 accumulator : 3 / currentValue : 3 / currentIndex : 2 return : 6

    3번째 호출 accumulator : 6 / currentValue : 4 / currentIndex : 3 return : 10

    4번째 호출 accumulator : 10 / currentValue : 5 / currentIndex : 4 return : 15

    결과 : 15

    a

    예제_2

    [1,2,3,4,5].reduce((accumulator, currentValue)=>accumulator + currentValue,0);
    // initialValue 있는 경우

    과정

    1번째 호출 accumulator : 0 / currentValue : 1 / currentIndex : 0 return : 1

    2번째 호출 accumulator : 1 / currentValue : 2 / currentIndex : 1 return : 3

    3번째 호출 accumulator : 3 / currentValue : 3 / currentIndex : 2 return : 6

    4번째 호출 accumulator : 6 / currentValue : 4 / currentIndex : 3 return : 10

    4번째 호출 accumulator : 10 / currentValue : 5 / currentIndex : 4 return : 15

    결과 : 15

    예제_3

    [[1,2],[3,4],[5,6]].reduce((accumulator, currentValue)=>
    	accumulator.concat(currentValue);
    );

    concat을 이용해서 2차원 배열을 1차원 배열로 변경할 수 있다.

    과정

    1번째 호출 accumulator : [1,2] / currentValue : [3,4] / currentIndex : 1 return : [1,2,3,4]

    2번째 호출 accumulator : [1,2,3,4] / currentValue : [5,6] / currentIndex : 2 return : [1,2,3,4,5,6]

    결과 : [1,2,3,4,5,6]

    728x90
    반응형
Designed by Tistory.