Skip to content
김태헌 edited this page Sep 30, 2024 · 2 revisions

예시 1: 배열에서 요소 잘라내기

import { slice } from 'mori-ts';

const array = [1, 2, 3, 4, 5];

// 인덱스 1부터 3까지의 요소를 잘라냅니다.
const res = [...slice(1, 3, array)]; // 출력: [2, 3]
const res2 = toArray(slice(1, 3, array)); // 출력: [2, 3]

// 인덱스 -3부터 -1까지의 요소를 잘라냅니다 (배열의 끝에서 세 번째부터 끝에서 두 번째 요소까지).
const res3 = [...slice(-3, -1, array)]; // 출력: [3, 4]
const res4 = toArray(slice(-3, -1, array)); // 출력: [3, 4]

예시 2: 파이프라인과 함께 사용하기

import { slice, pipe, map, filter, toAsync, toArray } from 'mori-ts';

const array = [1, 2, 3, 4, 5];

// 요소들을 두 배로 만든 후, 2보다 큰 요소들 중 1번째부터 3번째 요소까지 잘라냅니다.
const result = pipe(
  array,
  map(x => x * 2),
  filter(x => x > 2),
  slice(1, 3),
  toArray
); // 출력: [6, 8]

// 비동기 반복자에서 요소들을 두 배로 만든 후, 2보다 큰 요소들 중 첫 번째부터 세 번째 요소까지 잘라냅니다.
const asyncResult = await pipe(
  [Promise.resolve(1), Promise.resolve(2), Promise.resolve(3), Promise.resolve(4)],
  toAsync,
  map(x => x * 2),
  slice(1, 3),
  toArray
); // 출력: [4, 6]

테스트 코드 링크

https://github.com/gangnamssal/mori-ts/blob/main/src/test/slice.spec.ts

Clone this wiki locally