문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 2 ≤ my_string 길이 ≤ 5
- 2 ≤ n ≤ 10
- "my_string"은 영어 대소문자로 이루어져 있습니다.
입출력 예my_stringnresult
"hello" | 3 | "hhheeellllllooo" |
입출력 예 설명
입출력 예 #1
- "hello"의 각 문자를 세 번씩 반복한 "hhheeellllllooo"를 return 합니다.
function solution(my_string, n) {
var answer = [...my_string].map(v => v.repeat(n)).join("");
console.log(answer);
return answer;
}
이렇게 spread operator를 이용해서 풀고 싶었다. 그런데 실패.
ㅡㅡㅡ> my_stirng.[...my_string] 이런식으로 쓰는 줄 알았네..ㅠ
<제출 답안>
function solution(my_string, n) {
return my_string.split('').map((x) => x.repeat(n)).join('');
}
ㅡㅡㅡㅡ> split과 join조합으로 했다.
<보충>
repeat에 대하여...
"a" 라는 문자를 여러개 이어붙여서 만들고 싶을 때가 있다.
"aaaaaaaaaa" 라고 쳐도 되지만, a가 1000개쯤 되면 직접 타이핑하는건 개발자스럽지 못하다.
(아닌가? 오히려 개발자스러운가?)
다른 언어에서는 "a" * 100을 해도 되는 경우가 있지만, 자바스크립트는 안 된다.
아래 두가지 방법으로 문자열을 n 개로 반복 생성할 수 있다.
# Javascript 문자 n번 반복 생성 방법
1. String.prototype.repeat(n)
: 문자열.repeat(n) => 문자열을 n번 반복 연결한 문자열 반환
* n은 반복할 횟수(정수)
* n을 생략하거나, 0으로 지정시, 빈 문자열 "" 반환
"a".repeat(3); // "aaa" 반환
"abc".repeat(3); // "abcabcabc" 반환
"a".repeat(); // "" 빈문자열 반환
"a".repeat(0); // "" 빈문자열 반환
(참고)ES6부터 String 타입에 추가된 메서드다.
출처: https://curryyou.tistory.com/199
[자바스크립트] 문자열 여러번 반복 생성 방법 2가지
"a" 라는 문자를 여러개 이어붙여서 만들고 싶을 때가 있다. "aaaaaaaaaa" 라고 쳐도 되지만, a가 1000개쯤 되면 직접 타이핑하는건 개발자스럽지 못하다. (아닌가? 오히려 개발자스러운가?) 다른 언어
curryyou.tistory.com
'🗃️javascript > 프로그래머스' 카테고리의 다른 글
배열의 유사도(Lv.0)(배열 간의 교집합, 차집합, 대칭차집합)(if문, 반복문) (1) | 2022.12.29 |
---|---|
문자열안에 문자열(Lv.0)(includes와 indexOf 사용해보기) (0) | 2022.12.29 |
배열 자르기(Lv.0)[slice() - 원본 변화x / splice() - 원본 변화o] (0) | 2022.12.29 |
특정 문자 제거하기(Lv.0)(split(),replace(),repalceAll() ) (0) | 2022.12.29 |
삼각형의 완성조건(1)(Lv.0) [sort(a,b)a-b :오름 차순 b-a : 내림차순] (0) | 2022.12.28 |