effect-io-ai

Package: effect
Module: Array

Array.window

Creates sliding windows of size n from an Iterable. If the number of elements is less than n or if n is not greater than zero, an empty array is returned.

Example

import * as assert from "node:assert"
import { Array } from "effect"

const numbers = [1, 2, 3, 4, 5]
assert.deepStrictEqual(Array.window(numbers, 3), [[1, 2, 3], [2, 3, 4], [3, 4, 5]])
assert.deepStrictEqual(Array.window(numbers, 6), [])

Signature

declare const window: { <N extends number = number>(n: N): <A>(self: Iterable<A>) => Array<TupleOf<N, A>>; <A, N extends number = number>(self: Iterable<A>, n: N): Array<TupleOf<N, A>>; }

Source

Since v3.13.2