이번 문제는 for문으로 쉽게 해결을 했습니다. 그래서 다른 메서드들을 활용해 문제를 풀어보자는 생각으로 Array.from 과 map, join 메서드를 사용해 봤습니다.
① 첫번째 방법 function solution(q, r, code) { let answer = "" let i = 0; for(let spell of code){ // for of문을 돌려서 if(i%q === r) answer += spell // 현재 i의 값(spell의 각 문자의 인덱스)를 q로 나눈 나머지가 r과 같을 때 answer에 해당 spell을 붙여줍니다. i++ // i값 증가 } return answer; //반환 } ② 두번째 방법 function solution(q, r, code) { const codeArray = Array.from(code); //해당 code를 from 메서드로 배열화 합니다. let answer = codeArray.map((spell, index) => (index % q === r) ? spell : '').join(''); //map 함수를 사용해 현재 인덱스를 q로 나눈 나머지가 r과 같을 경우 spell을 배열에 누적하고, 아닐 경우 빈 문자열을 누적시키는 작업을 순회 작업시키고 그 결과물을 join 메서드로 문자열 화 시켜 answer에 반환해 줍니다. return answer; }