[프로그래머스 | JavaScript] 자릿수 더하기

728x90
반응형

(1) 내 코드

function solution(n)
{
   let n_arr =n.toString().split('');
    //console.log(n_arr); //    [ '1', '2', '3' ]  
   
    let num_n_arr = n_arr.map((value)=> Number(value));
    //console.log(num_n_arr); //[ 1, 2, 3 ]
    return (num_n_arr.reduce((a,c)=>a + c,0));
}

▶ input : n= 123 / output =6 (자릿수 더하기)

▶ 배열의 reduce를 사용하여 합을 구하면 되겠다고 생각했는데 자꾸 '123'이 나옴

▶ 해결

(1) typeof로 확인 결과 n은 문자열이 아닌 숫자! 

(2) n_arr 로 배열로 변환하면 [1,2,3]이 아닌 ['1','2','3']

(3)  ['1','2','3'] >> [1,2,3]으로 변환 : map 함수 사용

 

 

끝.

반응형