자바스크립트에서 문자열을 여러 번 반복하는 작업은 간단하면서도 다양한 방법으로 구현할 수 있다. 아래는 문자열 string을 3번 반복하여 stringstringstring을 만드는 다양한 방법을 소개한다.
ES6부터 제공되는 repeat() 메서드는 가장 간단하고 직관적인 방법이다.
function solution(my_string, k) {
return my_string.repeat(k);
}
// 예시
console.log(solution("string", 3)); // stringstringstring
for문을 활용해 반복적으로 문자열을 누적하는 방법이다.
function solution(my_string, k) {
let result = "";
for (let i = 0; i < k; i++) {
result += my_string;
}
return result;
}
// 예시
console.log(solution("string", 3)); // stringstringstring
배열과 join() 메서드를 활용해 반복 문자열을 생성하는 방법이다.
function solution(my_string, k) {
return Array(k).fill(my_string).join("");
}
// 예시
console.log(solution("string", 3)); // stringstringstring
재귀를 활용한 방식으로 문자열을 반복적으로 더해가는 풀이다.
function solution(my_string, k) {
if (k <= 0) return "";
return my_string + solution(my_string, k - 1);
}
// 예시
console.log(solution("string", 3)); // stringstringstring
Array와 reduce()를 활용해 문자열을 누적하는 방식이다.
function solution(my_string, k) {
return Array(k).fill(my_string).reduce((acc, curr) => acc + curr, "");
}
// 예시
console.log(solution("string", 3)); // stringstringstring
while문을 이용해 반복 횟수만큼 문자열을 더해가는 방법이다.
function solution(my_string, k) {
let result = "";
while (k > 0) {
result += my_string;
k--;
}
return result;
}
// 예시
console.log(solution("string", 3)); // stringstringstring
상황별 선택 가이드
• 가장 간단한 방법: repeat() • 추가 조건이나 조작 필요: for, while • 배열과 함수형 스타일 선호: reduce()나 Array와 join() • 재귀 연습이 필요한 경우: 재귀 함수 사용
코딩테스트에서는 문제의 요구사항과 실행 시간에 따라 적합한 방법을 선택하자. repeat() 메서드가 가장 간단하고 빠르지만, 다른 방법도 상황에 따라 유용하다.