문자열 my_string과 정수 n이 매개변수로 주어질 때,
my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록
solution 함수를 완성해보세요.
repeat으로 n번 만큼 문자열 요소를 반복한다.
인덱스를 사용해 요소 하나하나를 for문으로 더하고,
n번만큼 반복한다.
처음에 문자열 곱하기를 도전했고 , 직접 수를 더하니 NaN이 나온다.
i+=을 반복하려고 했지만 되지 않았다.
그래서 문자열을 반복하는 repeat 메서드를 찾았고, 최종답안이 나왔다.
function solution(my_string, n) {
var answer = '';
for(let i=0; i<my_string.length; i++){
answer+=(my_string[i]).repeat(n)
}
return answer;
}
다른 사람들의 답
function solution(my_string, n) {
var answer = [...my_string].map(v => v.repeat(n)).join("");
console.log(answer);
return answer;
}
my_string을 스프레드 형식으로 써서 현재 문자열을 배열로 하여
map으로 요소를 n번 반복하되,
요소들을 합치는 join을 썼다.
answer을 console.log로 내보낸다.
function solution(my_string, n) {
return my_string.split('').reduce((acc, cur) => acc + cur.repeat(n), '')
}
문자열을 나누고 reduce를 써서 n번 반복한 것을 더하도록 한다.
reduce는 누산기 acc
현재값 cur
현재 인덱스 idx 원본배열 src가 있다.
ex)const array1 = [1, 2, 3, 4];
// 0 + 1 + 2 + 3 + 4
const initialValue = 0;
const sumWithInitial = array1.reduce(
(accumulator, currentValue) => accumulator + currentValue,
initialValue
);
console.log(sumWithInitial);
// Expected output: 10