VDL Plugin SDK

takeWhile

Import from @varavel/vdl-plugin-sdk/utils/arrays.

function takeWhile<T>(arr, shouldContinueTaking): T[];

Returns a new array containing the leading elements of the provided array that satisfy the provided predicate function. It stops taking elements as soon as an element does not satisfy the predicate.

Type Parameters

Type ParameterDescription
TThe type of elements in the array.

Parameters

ParameterTypeDescription
arrreadonly T[]The array to process.
shouldContinueTaking(element, index, array) => booleanThe predicate function that is called with each element, its index, and the array. Elements are included in the result as long as this function returns true.

Returns

T[]

A new array containing the leading elements that satisfy the predicate.

Examples

// Returns [1, 2]
takeWhile([1, 2, 3, 4], x => x < 3);
// Returns []
takeWhile([1, 2, 3, 4], x => x > 3);
// Using index parameter
takeWhile([10, 20, 30, 40], (x, index) => index < 2);
// Returns: [10, 20]