본문 바로가기
개발이야기/JavaScript

[JavaScript] 문자열을 반복해서 출력하는 다양한 방법

by hyung12 2025. 4. 30.

🧩 상황 예시

프로그래머스, 백준 등 코딩 테스트에서
문자열을 N번 반복 출력해야 할 때가 있어요.

예를 들어, 문자열 "abc"를 3번 반복해서 출력하라면?

abcabcabc
 

이렇게 출력해야 하죠.

 


 

💡 자바스크립트에서 문자열 반복하는 다양한 방법

 

✅ 1. .repeat() 메서드 사용 (가장 간단)

ES6부터 지원되는 문자열 전용 메서드입니다.

const str = 'abc';
const repeated = str.repeat(3);
console.log(repeated); // abcabcabc

 

장점: 가장 직관적이고 깔끔함
주의: 브라우저/Node.js가 ES6 이상이어야 함

 


 

✅ 2. for 반복문 이용

const str = 'abc';
let result = '';
for (let i = 0; i < 3; i++) {
  result += str;
}
console.log(result); // abcabcabc

 

장점: 반복 횟수 제어가 쉬움
단점: 코드가 살짝 길어짐

 


 

✅ 3. Array + join 활용 (비교적 고급 방식)

const str = 'abc';
const repeated = Array(4).join(str);
console.log(repeated); // abcabcabc

 

Array(4)는 길이 4짜리 배열을 만들고
join('abc')을 하면 "abcabcabc"가 출력돼요.
즉, (반복횟수 + 1) 길이의 배열이 필요해요.

주의: 이건 "abc".repeat(3)과 똑같은 결과지만
코드가 덜 직관적이니 잘 알고 쓸 때만 추천!

 


 

✅ 4. 재귀 함수로도 가능 (비추지만 공부용)

function repeatStr(str, times) {
  if (times <= 0) return '';
  return str + repeatStr(str, times - 1);
}

console.log(repeatStr('abc', 3)); // abcabcabc

장점: 재귀 연습용
단점: 성능적으로 좋지 않고, 큰 반복에는 적합하지 않음

 


 

✨ 마무리 요약

방법특징

 

str.repeat(n) 제일 깔끔하고 추천하는 방법
for문 제어가 쉽고 직관적
Array(n+1).join(str) 약간 고급, 덜 직관적
재귀 공부용, 실전에는 비추천

 


 

✍️ 이런 식으로 활용해요!

 
const input = 'Hello';
const count = 5;
console.log(input.repeat(count)); // HelloHelloHelloHelloHello

 

 

반응형