오늘 뭐했냐/기억하면 좋을 문제들
숨어있는 숫자의 덧셈 (1)
스스로에게
2023. 5. 31. 15:10
문자열 my_string이 매개변수로 주어집니다. my_string안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요.
function solution(my_string) {
let arr = my_string.match(/\d/g)
let numbers = arr.map(n=>Number(n))
return numbers.reduce((a,b)=>a+b);
}
나름 정규표현식을 활용해서 깔끔하게 풀었다
function solution(my_string) {
return [...my_string].reduce((acc,cur)=>Number(cur) ? +acc + +cur : acc, 0)
}
다른 글에서 .reduce() 안에 Number()으로 숫자형으로 바꾸면서 누적값을 계산하는 것을 보았을 때도
저렇게 생각할 수 있구나 싶었는데 이번 문제에서는
삼항연산자로 누적값을 계산할 때의 식을 선택적으로 하게 만들었기에
이렇게도 만들 수 있구나 싶어서 일단 기록하려고 한다