HOFs are so prolific in DataWeave’s library that there are additional syntax features that make them easier to use. For functions that DataWeave provides, you can represent the first, second, and third arguments of the passed lambda as $
, $$
, and $$$
, respectively. When you do this, you do not need to specify the arguments of the lambda when you pass it to the function. Here’s our odd number filter example from earlier using the dollar-sign syntax:
%dw 2.0 output json var numbers = (1 to 5) --- numbers filter (($ mod 2) == 1)
[1,3,5]
The dollar-sign syntax gives us all the same functionality as when we reference something by its name. This means we can chain selectors and indexes right off of the dollar-sign in order to query data:
[ { "id": 1, "item": "cheese", "price": 4.00 }, { "id": 2, "item": "steak", "price": 15.00 }, { "id": 3, "item": "cereal", "price": 5.00 }, { "id": 4, "item": "apples", "price": 2.00 } ]
%dw 2.0 output json --- payload filter $.price > 5
[ { "id": 2, "item": "steak", "price": 15.00 } ]
If you like my post please follow me to read my latest post on programming and technology.
A builder plans to construct N houses in a row, where each house can be…
Find the length of the longest absolute path to a file within the abstracted file…
You manage an e-commerce website and need to keep track of the last N order…
You are given a stream of elements that is too large to fit into memory.…
The formula for the area of a circle is given by πr². Use the Monte…
Given an integer k and a string s, write a function to determine the length…