Coding Test/Programmers
[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 25 - 문자 반복 출력하기)
dev-ini
2024. 2. 1. 16:44
728x90
# 문제
문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요.
# 답안
// 1. 입력: my_string -> 문자열 "hello" 같은거, n -> 정수 1,2,3 같은거
// 2. 출력: my_string에 들어있는 각 문자를 n만큼 반복한 문자열
// 방법1)
function solution(my_string, n) {
return my_string.split('').map(char => char.repeat(n)).join('');
}
// 방법2)
function solution(my_string, n) {
return [...my_string].map(v => v.repeat(n)).join("");
}
# 인사이트
// 방법1) split으로 문자열 쪼개서 배열로 만들고, map으로 배열 각 요소를 repeat해서 요소들마다 반복하고, join으로 이어 붙이기
// 방법2) spread 연산자 써서 나누고, map으로 배열 각 요소를 repeat해서 요소들마다 반복하고, join으로 이어 붙이기
< 과정 >
1-1. split로 문자열을 쪼개서 배열로 만들기
function solution(my_string, n) {
return my_string.split('');
}
solution("abc", 3) // ['a', 'b', 'c']
1-2. spread 연산자로 문자열을 문자 단위로 나누어 각 문자를 배열의 요소로 만들기
function solution(my_string, n) {
return [...my_string];
}
solution("abc") // ['a', 'b', 'c']
2. map으로 배열의 각 요소를 repeat 하기
function solution(my_string, n) {
return my_string.split('').map(char => char.repeat(n));
}
solution("abc", 3) // ['aaa', 'bbb', 'ccc']
3. join으로 배열의 각 요소를 이어붙이기
function solution(my_string, n) {
return my_string.split('').map(char => char.repeat(n)).join('');
}
solution("abc", 3) // 'aaabbbccc'
728x90