Closed1

TypeScirptでArrayを分割する1番シンプルな方法

Futa OgawaFuta Ogawa
function chunk<T>(array: T[], size = 1) {
  return array.reduce<T[][]>(
    (previousValue, _, currentIndex) =>
      currentIndex % size
        ? previousValue
        : [...previousValue, array.slice(currentIndex, currentIndex + size)],
    [],
  );
}
["a", "b", "c"].reduce<string[][]>(
  (p, _, i, a) => (i % 2 ? p : [...p, a.slice(i, i + 2)]),
  [],
);
このスクラップは2023/11/25にクローズされました