[JS] slice? splice?

오찬주·2024년 7월 21일
0

JAVASCRIPT

목록 보기
7/8
post-thumbnail

간단한 문제를 풀다가 slice를 무심코 썼는데

오잇 그러고 보니 slice도 있고 splice도 있잖아!!
정확한 차이가 뭐였지..

가물가물해져서 정리해보고자 한다!

우선 slice()와 splice()는 배열에서 요소를 추출하거나 배열을 변경하는 데 사용된다.


slice()

배열의 일부분을 추출하여 새로운 배열을 반환하며 원본 배열은 변경되지 않는다. (shallow copy)

arr.slice([begin[, end]])

begin부터 end까지(end 포함 X)에 대한 얕은 복사본을 새로운 배열 객체로 반환하는 것이다.

splice()

배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경한다.

array.splice(start[, deleteCount[, item1[, item2[, ...]]]])

예시를 들자면 다음과 같다.

var myFish = ["angel", "clown", "mandarin", "sturgeon"];
var removed = myFish.splice(2, 0, "drum");

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

결론

slice()는 원본 배열을 변경하지 않고 일부 요소를 추출하여 새로운 배열을 반환한다.
splice()는 원본 배열을 수정하여 요소를 추가하거나 삭제한다

profile
프론트엔드 엔지니어를 희망합니다 :-)

0개의 댓글