본문 바로가기
배움 기록/코테 연습

[프로그래머스] 문자열 겹쳐쓰기 : JavaScript

by dygreen 2023. 11. 7.

📌 문제

 

📌 풀이

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_stringlength 값 만큼 제거하고, 제거한 자리에 overwrite_string 을 집어 넣도록 작성하면 된다.

  • 마지막으로 join() 을 사용하여 배열을 하나의 문자열로 만들어 반환하면 된다.
728x90

댓글