%dw 2.0
import * from dw::core::Arrays
output application/json
var arr = [0,1,2,3,4,5]
---
arr partition (item) -> isEven(item)
DataWeave
partition
partition<T>(array: Array<T>, condition: (item: T) -> Boolean): { success: Array<T>, failure: Array<T> }
Separates the array into the elements that satisfy the condition from those that do not.
Introduced in DataWeave version 2.2.0.
Parameters
Name | Description |
---|---|
|
The array of elements to split. |
|
The condition (or expression) used to match an element in the array. |
Example
This example partitions numbers found within an input array. The
even numbers match the criteria set by the lambda expression
(item) → isEven(item)
. The odd do not. The function generates the
"success"
and "failure"
keys within the output object.
Source
Output
{
"success": [
0,
2,
4
],
"failure": [
1,
3,
5
]
}
json
partition(array: Null, condition: (item: Nothing) -> Any): Null
Helper function that enables partition
to work with a null
value.
Introduced in DataWeave version 2.4.0.