Contact Free trial Login

takeWhile

takeWhile(Array<T>, (item: T) -> Boolean): Array<T>

Selects elements from the array while the condition is met but stops the selection process when it reaches an element that fails to satisfy the condition.

To select all elements that meet the condition, use the filter function.

Introduced in DataWeave 2.2.0. Supported by Mule 4.2 and later.

Parameters

Name Description

array

The array of elements.

condition

The condition (or expression) used to match an element in the array.

Example

This example iterates over the elements in the array and selects only those where the index is <= 2. Note that it stops selecting elements when it reaches an element that is greater than 2. It does not select the second 1 because 4 precedes 1 in the array. The function outputs the result into an array.

Source

%dw 2.0
import * from dw::core::Arrays
output application/json
var arr = [0,1,2,4,1]
---
arr takeWhile $ <= 2

Output

[
  0,
  1,
  2
]

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub