프로그래머스 JS LV0

LV0 22 자릿수 더하기

와라리요 2022. 10. 13. 14:03

문제

 - 정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요

 

입출력 예

n result
1234 10
930211 16

 

나만의 풀이

  처음에는 숫자들을 분리하려고 했다. 그래서 .split('')를 이용을 했는데 계속 오류가 발생해서 스트레스를 받고 있는 상황이였는데... 쉰다고 생각을 멈추니 split는 숫자열을 분리하지 못한다는 것을 떠올렸다. 그래서 toSting을 이용해 문자열로 만들고 reduce()를 이용해 모든 숫자를 더하는데 Number을 이용해 문자열로 바꾼 숫자들을 다시 숫자열로 치환했다. 그래서 완성한 코드~~

※ reduce의 맨 뒤에 있는 0은 더 하기던 기본 값 설정이라고 보면 된다. 즉 0이 아니라 1이면 값이 +1이 되어 나온다.

function solution(n) {
    let num = n.toString().split('').reduce((a, b) => Number(a) + Number(b), 0)
    return num;
}

'프로그래머스 JS LV0' 카테고리의 다른 글

LV0 24 편지  (0) 2022.10.13
LV0 23 양꼬치  (0) 2022.10.13
LV0 21 배열 자르기  (0) 2022.10.12
LV0 20 제곱수 판별하기  (0) 2022.10.12
LV0 19 최댓값 만들기 (1)  (0) 2022.10.12