티스토리 뷰

반응형
const arr1 = [1, 2, 3];
const arr2 = [1, 2, 3];

const sliced = arr1.slice(0, undefined);
const spliced = arr2.splice(0, undefined);

console.log(`original: ${arr1} / sliced: ${sliced}`);
console.log(`original: ${arr2} / spliced: ${spliced}`);

/* 실행 결과
original: 1,2,3 / sliced: 1,2,3
original: 1,2,3 / spliced: 
*/
  • slice: 원본 배열에서 인수에 전달된 범위를 잘라오지만, 원본 배열은 수정하지 않는다.
  • splice: 원본 배열에서 인수에 전달된 범위만큼 자르며, 원본 배열도 수정된다.
  • undefined를 전달했을 경우 slice는 끝까지 자르고, splice는 자르지 않는다는 차이점이 있다.

왜 다르게 했을까

'Dev. > javascript' 카테고리의 다른 글

[JS] Function.prototype.bind()  (0) 2022.05.27
[JS] Date 역순 정렬  (0) 2022.05.17
[JS] 클래스의 private 속성  (0) 2022.05.06
[JS] 메소드 오버라이딩  (0) 2022.04.23
[JS] 객체 배열을 Map으로 변환하기  (0) 2022.04.23
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함