Javascript 如何从右向左缩小阵列?

Javascript 如何从右向左缩小阵列?,javascript,arrays,ecmascript-6,arrow-functions,Javascript,Arrays,Ecmascript 6,Arrow Functions,如何从右到左减少数组,以便获得此输出而不是代码段 [{ "id": 134116, "user": "admin", "historyno": "134116-0" }, { "id": 134132, "user": "admin", "historyno": "134132-0&q

如何从右到左减少数组,以便获得此输出而不是代码段

[{
  "id": 134116,
  "user": "admin",
  "historyno": "134116-0"
}, {
  "id": 134132,
  "user": "admin",
  "historyno": "134132-0"
}, {
  "id": 134133,
  "user": "admin",
  "historyno": "134133-0"
}];
const input=[{“id”:134116,“user”:“admin”,“historyno”:“134116-0”},{“id”:134132,“user”:“admin”,“historyno”:“134132-0”},{“id”:134132-0”},{“id”:“admin”,“historyno”:“134132-1”},{“id”:134133,“user”:“admin”,“historyno”:“134133-0”},{“id”:134133,“user”:“admin”,“historyno”:“134133-1”};
const output=[…input.reduce((r,o)=>r.set(o.id,o),new Map).values();
控制台日志(输出)为什么不采取行动

const
input=[{id:134116,用户:“admin”,历史编号:“134116-0”},{id:134132,用户:“admin”,历史编号:“134132-0”},{id:134132,用户:“admin”,历史编号:“134132-1”},{id:134133,用户:“admin”,历史编号:“134133-0”},{id:134133,用户:“admin”,历史编号:“134133-1”},{,
output=[…input.reduceRight((r,o)=>r.set(o.id,o),newmap.values();
控制台日志(输出)

.as控制台包装{max height:100%!important;top:0;}
您可以将
数组.reduce()
数组.reduceRight()交换


参考资料:

.reverse()首先是数组,这里的答案基本上是RTFM。你确定你总是喜欢最右边的项目吗?@dota2pro所以你永远不会处理这样的数组:?这里的一个解决方案是找到数组中元素位置以外的另一个特征。例如,您可能总是希望以
0
结尾的
historyno
。使用此规则,您可以使回拨更加复杂。