【发布时间】:2016-06-08 10:37:00
【问题描述】:
我有以下对象数组,(ets 说这里的时间是模拟的,更大的是最后一个)
var firstArr = [{
id: 1,
a: 2,
timestemp: 111
}, {
id: 2,
a: 4,
timestemp: 222
}, {
id: 3,
a: 6,
timestemp: 333
}, {
id: 1,
a: 3,
timestemp: 777
}, {
id: 3,
a: 5555,
timestemp: 5555
}];
我需要做的是以某种方式过滤这个数组并创建具有唯一值的新数组。
最后我需要
var endArr = [{
id: 1,
a: 3,
timestemp: 777
}, {
id: 2,
a: 4,
timestemp: 222
}, {
id: 3,
a: 5555,
timestemp: 555
}];
如您所见,我已经通过两件事过滤了这个数组
- 唯一 ID(条目 1 和 3 仅存在一次)
- timestemp(只添加最后一个timestemp的对象)
如何使用 map/reduce/filter 等数组方法做到这一点?
我尝试用 array.filter 来做,但没有成功
【问题讨论】:
-
"我尝试使用 array.filter 来做,但没有成功" - 所以向我们展示失败的尝试,告诉我们它是如何出错的,告诉我们任何错误生成(在开发人员控制台中可见,在大多数浏览器中为 F12),解释它做了什么以及你希望它做什么。这样,您下次可能会学到一些有用的东西,其他人也可能会学到一些重要或有趣的东西。
标签: javascript arrays object javascript-objects lodash