如何从右到左缩小数组?
How to reduce an array from Right to Left?
如何从右向左缩小数组,以便我得到此输出而不是代码段?
[{
"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,"user":"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()];
console.log(output);
我从之前的
那里得到了这段代码
为什么不带Array#reduceRight
?
const
input = [{ id: 134116, user: "admin", historyno: "134116-0" }, { id: 134132, user: "admin", historyno: "134132-0" }, { id: 134132, user: "admin", historyno: "134132-1" }, { id: 134133, user: "admin", historyno: "134133-0" }, { id: 134133, user: "admin", historyno: "134133-1" }],
output = [...input.reduceRight((r, o) => r.set(o.id, o), new Map).values()];
console.log(output);
.as-console-wrapper { max-height: 100% !important; top: 0; }
您可以将 Array.reduce()
换成 Array.reduceRight()
如何从右向左缩小数组,以便我得到此输出而不是代码段?
[{
"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,"user":"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()];
console.log(output);
我从之前的
为什么不带Array#reduceRight
?
const
input = [{ id: 134116, user: "admin", historyno: "134116-0" }, { id: 134132, user: "admin", historyno: "134132-0" }, { id: 134132, user: "admin", historyno: "134132-1" }, { id: 134133, user: "admin", historyno: "134133-0" }, { id: 134133, user: "admin", historyno: "134133-1" }],
output = [...input.reduceRight((r, o) => r.set(o.id, o), new Map).values()];
console.log(output);
.as-console-wrapper { max-height: 100% !important; top: 0; }
您可以将 Array.reduce()
换成 Array.reduceRight()