slice() 메서드는 어떤 배열의 start부터 end전까지의 복사본을 새로운 배열 객체로 반환한다.
즉, 원본 배열은 수정되지 않는다
✍🏻start: 시작점에 대한 인덱스
✍🏻end : 추출을 종료할 기준 인덱스
예시 코드를 보면 ▼
let nums = [1,2,3,4,5]
let nums_new = nums.slice(1,4)
console.log(nums) // [ 1, 2, 3, 4, 5 ]
console.log(nums_new) // [ 2, 3, 4 ]
첫번째 인자에 음수가 들어가는 경우 코드를 보면 ▼
let nums = [1,2,3,4,5]
let nums_new = nums.slice(-2)
console.log(nums) // [ 1, 2, 3, 4, 5 ]
console.log(nums_new) // [ 4, 5 ]
음수가 들어갈 경우 끝에서부터 해당하는 숫자만큼의 요소를 배열에 담아 리턴하게 된다.
splice() 메서드는 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경한다. 즉, 이 메서드는 원본 배열 자체를 수정한다.
✍🏻start : 배열의 변경을 시작할 index
✍🏻delete : 배열에서 제거할 요소의 수
✍🏻 item : 추가하고 싶은 요소
예시 코드 ▼
let num = [1,2,3,4,5];
num.splice(2,1,10);
console.log(num); // [ 1, 2, 10, 4, 5 ]
🍭splice는 의외로 일상생활 속의 기능에 자주 쓰인다.
보통 댓글 삭제 기능을 구현할때 splice메서드를 많이 활용한다고 한다 :)