Привет, Дейл, есть разница, takeWhile прекратит брать элементы с первым элементом, если условие не выполняется, что не относится к фильтру, поэтому для этого примера [0,2,4,3,1]
С TakeWhile
%dw 2.0
import * from dw::core::Arrays
output application/json
var arr = [0,2,4,3,1]
---
arr takeWhile $ <= 2
Возвращает:
[
0,
2
]
С фильтром
%dw 2.0
import * from dw::core::Arrays
output application/json
var arr = [0,2,4,3,1]
---
arr filter $ <= 2
Возвращает:
[
0,
2,
1
]