[JS] 문자열 곱하기

2023. 5. 1. 09:06코딩테스트

1. 문제설명


문자열 my_string과 정수 k가 주어질 때, my_string을 k번 반복한 문자열을 return 하는 solution 함수를 작성해 주세요.

제한 조건

  • 1 ≤ my_string의 길이 ≤ 100
  • my_string은 영소문자로만 이루어져 있습니다.
  • 1 ≤ k ≤ 100

입출력 예

my_string k result
"string" 3 "stringstringstring"
"love" 10 "lovelovelovelovelovelovelovelovelovelove"

2.해결


function solution(my_string, k) {
    let result = [];

      for (let i = 1; i <= k; i++) {
        result.push(my_string);
      }

    return result.join("");
}

3. 다른분들의 풀이방법


function solution(my_string, k) {
    return my_string.repeat(k)
}

나는 처음에 반복해서 붙힌다는 말을 듣자마자 머리에 반복문이 떠올랐다.
하지만 좋은 생각은 아니였던거같다.
문제를 풀다가 배운점은 String의 내장 되어있는 repeat() 메서드였다.
repeat은 호출된 문자열의 지정된 복사복 수를 포함하는 새 문자열을 반환한다.

const testText = 'test';

console.log(testText.repeat(3));
// output : testtesttest

repeat 메서드는 하나의 매개변수를 받는다.
그 매개변수는 반복할 횟수를 적어준다.
만약 그 count가 음수이거나 최대치를 초과하면 RangeError가 발생한다.

'코딩테스트' 카테고리의 다른 글

[JS] 양꼬치  (0) 2023.05.02
[JS] 문자열 앞의 n 글자  (0) 2023.05.01
[JS] 문자열 내 p와 y의 갯수  (0) 2023.05.01
[JS] 문자열 내림차순으로 배치하기  (0) 2023.05.01
[JS] 배열의 합 구하기  (0) 2023.05.01