배움 기록/코테 연습
[프로그래머스] 문자열 겹쳐쓰기 : JavaScript
dygreen
2023. 11. 7. 15:40
📌 문제
📌 풀이
function solution(my_string, overwrite_string, s) {
let arr = [...my_string];
arr.splice(s, overwrite_string.length, overwrite_string);
return arr.join('');
}
my_string
은 문자열이기 때문에 배열(arr)로 만들어 준다.
여기서 spread operator 를 사용하는 이유는splice()
가 얕은 복사를 하기 때문이다.
* 참고로 slice() 는 깊은 복사를 한다. (얕은 복사 / 깊은 복사 정리글)splice(start, deleteCount, element)
:
• start = 배열의 변경을 시작할 인덱스
• deleteCount = 배열에서 제거할 요소의 수
• element = 배열에 추가할 요소. 아무 요소도 지정하지 않으면 요소를 제거하기만 함.
→ start 값으로 주어진s
값을 넣고,overwrite_string
의 length 값 만큼 제거하고, 제거한 자리에overwrite_string
을 집어 넣도록 작성하면 된다.- 마지막으로
join()
을 사용하여 배열을 하나의 문자열로 만들어 반환하면 된다.
728x90