takeWhile
import { takeWhile } from "jsr:@ende/collections";function
function takeWhile<T>(iterable: Iterable<T>, predicate: (el: T, index: number) => boolean): T[]Returns all elements in the given collection until the first element that does not match the given predicate.
iterable: Iterable<T>The iterable to take elements from.
predicate: (el: T, index: number) => booleanThe predicate function to determine if an element should be included. The function receives the element and its index.
Returns
An array containing all elements until the first element that does not match the predicate.
Example: Basic usage
import { takeWhile } from "@ende/collections/take-while";
import { assertEquals } from "@ende/assert";
const numbers = [1, 2, 3, 4, 5, 6];
const result = takeWhile(numbers, (number) => number < 4);
assertEquals(result, [1, 2, 3]);
Example: Using the index parameter
import { takeWhile } from "@ende/collections/take-while";
import { assertEquals } from "@ende/assert";
const array = [20, 30, 20];
const result = takeWhile(array, (_, index) => index < 2);
assertEquals(result, [20, 30]);