개발일지 TIL(Today I Learned)
[2023.06.22] 개발일지
이승재(Frontend Developer)
2023. 6. 28. 18:37
오늘은 대망의 알고리즘 시험을 보는 날!
첫번째 문제는 매개변수 n으로 하는 함수로 숫자인 외부인자 값의 모든 자릿수를 더하는 수식을 만드는 문제.
처음에는 내가 자주 사용해 온 for문과 if문을 통해 코드를 어렵지 않게 완성해나갔다.
그러나 완성된 코드를 지켜보니 너무 난잡하고 길어져 하드 코딩이 되어버렸다.
그런 의미에서 처음 완성한 코딩을 바탕으로 for문, if문이 아닌
map() 메서드와 reduce() 메서드를 이용해서 코드를 처음부터 다시 짜보았다.
그랬더니...
결과 값이
이렇게 나왔다.
자기 자리의 값에다가 자기 자리값을 붙인 결과가 나왔는데 이는 각 배열의 요소들이 문자열 형태였고 map()메서드 만으로는 추가해서 더하는 것이 불가능하기 때문이다.
그렇게 오랜 고심 끝에 parseInt()와 reduce()를 이용해 코드를 완성할 수 있었다.
map(), reduce(), parseInt()의 작동 원리를 좀 더 확실하게 알아가는 하루였다.