-
1. 머릿말
알고리즘 문제들을 풀면서, Splice와 Slice에 대해서 항상 헷갈리면서 사용을 하다가 이번 기회로 제대로 정리하고자 글을 작성하게 되었습니다 ! 본 내용은 MDN 의 내용을 기반으로 작성되어, 조금 더 이해가 쉬운 방식으로 글을 쓰기 위해 노력을 하였습니다 :)
2. Splice()
arr.Splice ( 시작점, 몇 개, 무엇을 )
Splice가 받아서 처리 할 수 있는 Parameter는 위에 적어 놓은 것처럼 크게 3가지라고 생각하시면 좋습니다.
시작점 => 어디서 Splice를 시작하는지 ?
어디까지 => 시작점 + Parameter Value 까지 Splice
무엇을 => 값이 있으면 ? Splice된 곳에 삽입 || 값을 변경 : 삽입
예시 코드
const months = ["Jan", "March", "April", "June"]; months.splice(2, 0, "hi"); // output : [ 'Jan', 'March', 'donghyeon', 'April', 'June' ] months.splice(2, 1, "hi"); // output : [ 'Jan', 'March', 'donghyeon', 'June' ] months.splice(2, 2, "donghyeon"); // output : [ 'Jan', 'March', 'donghyeon' ] months.splice(2, 2, "donghyeon", "hi"); // output : [ 'Jan', 'March', 'donghyeon', 'hi' ] months.splice(2, 2, "donghyeon", "hi", "hello"); // output : [ 'Jan', 'March', 'donghyeon', 'hi', 'hello' ]
3. Slice()
slice() 메서드는 어떤 배열의 begin부터 end까지(end 미포함)에 대한 얕은 복사본을 새로운 배열 객체로 반환합니다. 원본 배열은 바뀌지 않습니다.
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant']; console.log(animals.slice(2)); // expected output: Array ["camel", "duck", "elephant"] console.log(animals.slice(2, 4)); // expected output: Array ["camel", "duck"] console.log(animals.slice(1, 5)); // expected output: Array ["bison", "camel", "duck", "elephant"] console.log(animals) // expected output: ['ant', 'bison', 'camel', 'duck', 'elephant'];
'Develop > JavaScript' 카테고리의 다른 글
[JavaScript] 객체 (0) 2021.05.27 [JavaScript] 자바스크립트의 메모리 모델 ( 부제 : let vs Const ) (0) 2021.05.20 [ JavaScript ] 자바스크립트 reduce function (0) 2021.05.11 [JavaScript] 자바스크립트 배열의 최대값 구하는 방법 (0) 2021.05.11 [JavaScript] Map() vs Every() (0) 2021.04.18 댓글