Skip to content

slice

INFO

이 함수는 호환성을 위한 es-toolkit/compat 에서만 가져올 수 있어요. 대체할 수 있는 네이티브 JavaScript API가 있거나, 아직 충분히 최적화되지 않았기 때문이에요.

es-toolkit/compat에서 이 함수를 가져오면, lodash와 완전히 똑같이 동작해요.

인덱스 start부터 인덱스 end까지 array의 부분 배열을 만들어요. 부분 배열에서 end는 포함하지 않아요.

기본 Array.prototype.slice와 다르게, 희소 배열(Sparse array)에 대해 밀집 배열(Dense array)을 반환하지 않아요.

인터페이스

typescript
function slice<T>(array: T[], start?: number, end?: number): T[];

파라미터

  • array (T[]): 부분 배열을 만들 배열.

arrayArrayLike<T>, null, 또는 undefined가 될 수 있어요.

lodash와 완전한 호환성을 보장하기 위해, slice 함수는 array를 다음과 같이 처리해요.

  • arrayArrayLike<T>인 경우, Array.from(...)을 사용하여 배열로 변환돼요.
  • arraynull 또는 undefined인 경우, 빈 배열로 처리돼요.
  • start (number): 시작 위치. 기본값은 0이에요.
  • end (number): 끝 위치. 기본값은 array.length예요.

반환 값

(T[]): arraystart부터 end까지의 부분 배열.

예시

typescript
slice([1, 2, 3], 1, 2); // => [2]
slice(new Array(3)); // => [undefined, undefined, undefined]

MIT 라이선스에 따라 배포됩니다.