오늘 뭐했냐/기억하면 좋을 문제들

자릿수 더하기 - 숫자를 각 자리마다 배열에 담기

스스로에게 2023. 5. 31. 14:57

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

function solution(n) {
    
    let str = String(n)
    let numFn = arg => Number(arg)
    let num = [...str].map(numFn)
    
    return num.reduce((a,c)=>a+c);
}

숫자를 문자열로 바꾸고 이를 스프레드 문법으로 배열에 담은 다음에

다시 그 문자열을 하나씩 숫자로 바꿔서 계산하였다

 

function solution(n) {
  return n
    .toString()
    .split("")
    .reduce((acc, cur) => acc + Number(cur), 0);
}

 이렇게 숫자를 문자열로 바꿔 배열에 담을 수 있고

마지막에 .reduce() 누적값을 계산할 때 숫자형으로 바꿔주는 방법도 있다는 것도 생각하게 되었다