인덱스 바꾸기

yejichoi·2023년 2월 19일
0

알고리즘 스터디

목록 보기
8/153

인덱스 바꾸기

문자열 my_string과 정수 num1, num2가 매개변수로 주어질 때, my_string에서 인덱스 num1과 인덱스 num2에 해당하는 문자를 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요.

입출력 예

my_stringnum1num2result
"hello"12"hlelo"
"I love you"36"I l veoyou"

입출력 예 설명

입출력 예 #1

"hello"의 1번째 인덱스인 "e"와 2번째 인덱스인 "l"을 바꾸면 "hlelo"입니다.

입출력 예 #2

"I love you"의 3번째 인덱스 "o"와 " "(공백)을 바꾸면 "I l veoyou"입니다.


풀이

function solution(my_string, num1, num2) {
    let arr = my_string.split("");

    let str1 = arr[num1];
    let str2 = arr[num2];

    arr.splice(num1, 1, str2);
    arr.splice(num2, 1, str1);

    return arr.join("");
}

splice

배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경
array.splice(start[, deleteCount[, item1[, item2[, ...]]]])

  • start : 배열의 변경을 시작할 인덱스
  • deleteCount : 배열에서 제거할 요소의 수 , 0 이라면 insert
  • item : 배열에 추가할 요소, 생략하면 단순 제거
var myFish = ['angel', 'clown', 'drum', 'mandarin', 'sturgeon'];
var removed = myFish.splice(3, 1);

// removed is ["mandarin"]
// myFish is ["angel", "clown", "drum", "sturgeon"]

0개의 댓글