🧩 상황 예시
프로그래머스, 백준 등 코딩 테스트에서
문자열을 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
반응형
'개발이야기 > JavaScript' 카테고리의 다른 글
콜백(callback)이란? 함수 안에서 또 함수를 호출하는 이유 (0) | 2025.04.22 |
---|---|
프로그래머스 - Javascript 핸드폰 번호 가리기 문제 풀기 (0) | 2022.08.18 |
[Javascript] Array Method map()과 foreach() 차이 (0) | 2022.06.29 |
11. UI와 API 그리고 문서보는 법 (0) | 2019.05.14 |
10. 모듈 (0) | 2019.05.14 |