Programmers_자릿수더하기

post-thumbnail

자릿수 더하기

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

[입출력 예]

nresult
123410
93021116

입출력 예 설명
입출력 예 #1

  • 1 + 2 + 3 + 4 = 10을 return합니다.

입출력 예 #2

  • 9 + 3 + 0 + 2 + 1 + 1 = 16을 return합니다.

[풀이]

  • String(num): num을 문자열로 변환합니다. 여기서는 숫자 123을 문자열 "123"으로 변환합니다.

  • [...String(num)]: 문자열을 배열로 분해합니다. 이 경우, "123" 문자열이 ["1", "2", "3"] 배열로 변환됩니다. [...]은 전개 연산자( spread operator)로, 배열이나 문자열 등을 개별 요소로 분해하여 새로운 배열이나 인수 목록으로 만듭니다.

  • .map(Number): 배열의 각 요소에 대해 Number 함수를 적용하여 숫자로 변환합니다. map 함수는 배열의 각 요소에 대해 주어진 함수를 호출하고 그 결과로 새로운 배열을 생성합니다. 여기서는 각 문자열 "1", "2", "3"을 숫자로 변환하여 [1, 2, 3] 배열을 생성합니다.

function solution(n) {
  const newArr = [...String(n)].map(Number);
  return newArr.reduce((acc,cur) => acc + cur);

알게된 내용

  • String() 함수를 사용하여 다른 타입의 값을 문자열로 바꿈
  • Number() 함수를 사용하여 다른 타입의 값을 숫자로 바꿈

0개의 댓글