ds-kit-js - v1.1.0
    Preparing search index...

    Class CircularBuffer<T>

    Кольцевой буфер фиксированной ёмкости. Когда буфер заполнен, push перезаписывает самый старый элемент. Удобен для логов, скользящих окон и истории последних N событий. Все операции — O(1).

    const last3 = new CircularBuffer<number>(3);
    [1, 2, 3, 4].forEach((n) => last3.push(n));
    last3.toArray(); // [2, 3, 4]

    Type Parameters

    • T

    Implements

    • Iterable<T>
    Index
    • Добавляет элемент в конец. Если буфер полон, вытесняет самый старый элемент и возвращает его; иначе возвращает undefined.

      Parameters

      • value: T

      Returns T | undefined

    • Удаляет и возвращает самый старый элемент.

      Returns T | undefined

    • Удаляет и возвращает самый новый элемент.

      Returns T | undefined

    • Самый старый элемент.

      Returns T | undefined

    • Самый новый элемент.

      Returns T | undefined

    • Элемент по индексу (0 — самый старый); отрицательный индекс считается с конца.

      Parameters

      • index: number

      Returns T | undefined

    • Итерация от самого старого к самому новому.

      Returns IterableIterator<T>