문제를 보고 두 가지 중에 고민했다.
1. 조건문 4개로 값을 더해준다.
2. 객체를 사용해 맵핑 되는 글자에 대한 값을 더해준다.
2번 과정이 더 간결하고 가독성이 좋아 보여 2번을 사용하기로 결정했다.
각 항목에 대한 객체를 매핑하고 control을 순회하며 매핑된 값을 더해주면 되겠다고 생각했다.
map을 사용할지 forEach를 사용할지에 대해서 고민했다.
리턴값이 없은 forEach를 사용했다.
다른 사람들은 누산기를 지원하는 reduce함수를 많이 사용하는 것 같다.
function solution(n, control) {
const d = {"w": 1, "s": -1, "d": 10, "a": -10}
control.split('').forEach((e) => n += d[e])
return n
}