【发布时间】:2019-03-29 14:19:16
【问题描述】:
我想要一个由某个字段区分的对象数组。 该数组已按此字段排序,因此确定要删除的字段应遵循以下内容:前一个字段的值应与该字段的当前值不同。
比如这个数组
[{A:'1',B:'1'},{A:'2',B:'2'},{A:'2',B:'3'}]
应该转换成
[{A:'1',B:'1'},{A:'2',B:'2'}]
我尝试了以下方法:
%dw 2.0
output application/json
var payload=[{A:'1',B:'1'},{A:'2',B:'2'},{A:'2',B:'3'}]
---
(payload map (
(a,i) -> ( (a) if payload[i-1].A != $.A )
))
但它不起作用。如果我不使用当前项目 ($),那么它会像这样工作
(a,i) -> ( (a) if payload[i-1].A != '2' )
但我需要当前和以前的项目都存在,以确定当前项目是新的(不等于前一个)。
【问题讨论】: