slice()
slice() 메서드는 어떤 배열의 begin부터 end까지(end 미포함) 배열의 일부분을 잘라내어 새로운 배열로 반환합니다. 원본 배열은 바뀌지 않습니다.
const arr = ['a', 'b', 'c', 'd'];
const arr1 = arr.slice(1, 3); // [ 'b', 'c' ]
const arr2 = arr.slice(1); // ['b', 'c', 'd']
const arr3 = arr.slice(-3, -1); // ['b', 'c']
begin
- 0을 시작으로 하는 추출 시작점에 대한 인덱스를 의미합니다.
- 음수 인덱스는 배열의 끝에서부터의 길이를 나타냅니다.
[-4] [-3] [-2] [-1]
a b c d
- slice(-2)는 배열에서 마지막 두 개의 엘리먼트를 추출합니다.
[c, d]
- begin이 undefined인 경우에는, 0번 인덱스부터 slice 합니다. begin이 배열의 길이보다 큰 경우에는, 빈 배열을 반환합니다.
end
- 추출을 종료 할 0 기준 인덱스입니다.
- slice 는 end 인덱스를 제외하고 추출합니다.
- 예를 들어, slice(1,4)는 두 번째 요소부터 네 번째 요소까지 (1, 2 및 3을 인덱스로 하는 요소) 추출합니다.
- 음수 인덱스는 배열의 끝에서부터의 길이를 나타냅니다. 예를 들어 slice(2,-1)는 세 번째부터 끝에서 두 번째 요소까지 추출합니다.
- end가 생략되면 slice()는 배열의 끝까지(arr.length) 추출합니다.
- 만약 end 값이 배열의 길이보다 크다면, silce()는 배열의 끝까지(arr.length) 추출합니다.
let fruits = ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango']
let citrus = fruits.slice(1, 3)
// fruits contains ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango']
// citrus contains ['Orange','Lemon']
'프론트엔드 > JavaScript' 카테고리의 다른 글
[ 자바스크립트 ] reduce() 함수 이해하기 (1) | 2022.09.13 |
---|---|
[자바스크립트] sort, 배열 정렬하기 (오름차순, 내림차순, 문자열, 객체) (0) | 2022.08.27 |
[자바스크립트] map, includes, toString, join의 사용 예제 (0) | 2022.05.12 |
[ 자바스크립트 ] find()와 filter()의 사용법 (0) | 2022.04.26 |
[자바스크립트] 자바스크립트에서의 this (0) | 2022.04.25 |
댓글