splice & slice

raejun·2021년 11월 30일
0

slice(begin, end)

  • begin부터 end전 까지 복사
  • 원본 유지
// ex)
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

let arr1 = arr.slice(3, 5); // [4, 5]
let arr2 = arr.slice(-3); // [8, 9, 10]
let arr3 = arr.slice(4); // [5, 6, 7, 8, 9, 10]
let arr4 = arr.slice(-3, 9); // [8, 9]
let arr5 = arr.slice(5, -4); // [6]

splice(start, deleteCount, [item...])

  • deleteCount: 배열에서 제거할 요소 수
  • item1,item2: 배열에 추가할 요소들
  • 배열의 기존 요소를 삭제 또는 추가
  • 원본 자체를 변경
// ex)
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

let arr1 = arr.splice(8, 2, 'a', 'b');

// arr1 = [9, 10], arr = [1, 2, 3, 4, 5, 6, 7, 8, 'a', 'b']
// ex)
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

let arr2 = arr.splice(4);

// arr2 = [5, 6, 7, 8, 9, 10], arr = [1, 2, 3, 4]
// ex)
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

let arr3 = arr.splice(5, 3);

// arr3 = [6, 7, 8], arr = [1, 2, 3, 4, 5, 9, 10]
// ex)
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

let arr4 = arr.splice(-3, 2);

// arr4 = [8, 9], arr = [1, 2, 3, 4, 5, 6, 7, 10]
// ex)
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

let arr5 = arr.splice(7, 0, 1004);

// arr5 = [], arr = [1, 2, 3, 4, 5, 6, 7, 1004, 8, 9, 10]
profile
정리노트

0개의 댓글