JavaScript - slice() (배열 or 문자열을 index로 자르기)

isk·2022년 11월 6일

JavaScript

목록 보기
27/39

slice() (배열 자르기)

slice()는 어떤 배열의 'end'부터 'end'까지(end 미포함)에 대한 복사본을 새로운 배열로 반환한다. 원본 배열은 바뀌지 않는다.

구문 : arr.slice([ begin [ , end ]])

  • a (옵션)
    0을 시작으로 하는 추출 시작점에 대한 인덱스(위치)를 의미.
    음수 인덱스는 배열의 끝에서부터의 길이를 나타내고, slice(-2)는 배열에서 마지막 두 개를 추출한다.
    begin이 undefined인 경우에는 0번 인덱스부터 slice 하고, begin이 배열의 길이보다 큰 경우에는 빈 배열을 반환하며, 값이 없으면 원래 배열을 반환한다.
  • b (옵션)
    추출을 종료 할 0 기준 인덱스(위치)를 의미.
    slice 는 end 인덱스를 제외하고 추출한다. 예를 들어, slice(1,4)는 두번째 요소부터 네번째 요소까지 추출한다.
    음수 인덱스는 배열의 끝에서부터의 길이를 나타낸다. 예를들어 slice(2,-1) 는 세번째부터 끝에서 두번째 요소까지 추출한다.
    end가 생략되면 slice()는 배열의 끝까지(arr.length) 추출한다.
const alphabet = ['a', 'b', 'c', 'd', 'e'];

console.log(animals.slice(2));
// ["c", "d", "e"]

console.log(animals.slice(2, 4));
// ["c", "d"]

console.log(animals.slice(1, 5));
// ["b", "c", "d", "e"]

console.log(animals.slice(-2));
// ["d", "e"]

console.log(animals.slice(2, -1));
// ["c", "d"]

console.log(animals.slice());
// ["a", "b", "c", "d", "e"]

slice() (문자열 자르기)

slice() 메소드는 문자열의 일부를 추출하면서 새로운 문자열을 반환한다.

구문 : str.slice(beginIndex[, endIndex])

  • beginIndex
    추출 시작점인 0부터 시작하는 인덱스. 만약 음수라면, beginIndex는 strLength(문자열 길이) + beginIndex로 취급된다.
    (예를 들어 beginIndex가 -3이면 시작점은 strLength - 3. 역순으로 찾는다고 보면 된다.).
    만약 beginIndex가 strLength 보다 크거나 같은 경우, 값이 없는 경우는 빈 문자열을 반환한다.
  • endIndex (옵션)
    0부터 시작하는 추출 종료점 인덱스로 그 직전까지 추출. (인덱스 위치의 문자는 추출에 포함되지 않는다.)
    만약 endIndex가 생략된다면, silce()는 문자열 마지막까지 추출한다.
    만약 음수라면, endIndex는 strLength(문자열 길이) + endIndex 로 취급된다
    (예를 들어 endIndex가 -3이면 종료점은 strLength - 3. 역순으로 찾는다고 보면 된다.).
var str = 'hello world!', // the length of str1 is 23.

    str1 = str.slice(1, 8),
    str2 = str.slice(4, -2),
    str3 = str.slice(8),
    str4 = str.slice(12);

console.log(str1); // ello wo
console.log(str2); // o worl
console.log(str3); // rld!
console.log(str4); //
console.log(str); // hello world!

0개의 댓글