본문 바로가기
JavaScript

[JavaScript] slice() 메서드

by bright17 2025. 4. 6.

제일 기본적인 메서드이지만 은근히 헷갈리는 부분이 있어서 정리해두려 한다

JS에서 배열이나 문자열을 자를 때 자주 사용하는데 비슷한 개념과 함께 정리했다.

slice()란

slice()는 배열이나 문자열에서 원하는 구간을 잘라내어 새로운 배열(또는 문자열)을 반환하는 메서드이다.

문법

slice(start, end)
  • start: 시작 인덱스 (포함)
  • end: 종료 인덱스 (불포함)

end 부분에 들어가는 인덱스는 불포함한다는 사실이 중요하다!!!!

예를 들어 아래와 같이 사용한다.

let num = ['0', '1', '2', '3', '4', '5', '6'];

console.log(num.slice(0,4)); 0번인덱스부터 3번째까지 출력 0123 
let string = "JavaScript";

console.log(string.slice(-3)); // -3은 뒤에서 3번째부터 끝까지 ipt

 

음수 인덱스도 사용 가능하여 뒤에서부터 자를 수도 있다.

내가 자주 헷갈렸던 부분은 splice() 와의 차이점인데 slice()는 복사본, splice()는 원본 변경이라는 큰 차이가 있다.

메서드 설명 원본!!!!
slice() 일부를 복사하여 새 배열 생성
splice() 일부를 제거/추가하여 수정