获取基于数组中的Id和日期的最新版本

时间:2017-05-01 12:18:00

标签: javascript arrays mongodb meteor

我有一个包含以下属性的javascript对象数组:_id, isVersionFrom, createdAt _id, isVersionFrom存储了mongoDb _id(当它是原始对象时,isVersionFrom为false)。 createdAt有一个时代的时间戳。 现在我想为每个_id获得一个包含最新版本的数组。

例如,如果我有这个数组:

[ { _id: 'CXsqvJ3ArwpM7aQwg', createdAt: 1493630867411, isVersionFrom: false }, { _id: 'nnFthaqJ254BQozSp', createdAt: 1493630967411, isVersionFrom: 'CXsqvJ3ArwpM7aQwg' }, { _id: 'Jksfe6Aaof9hT8CW9', createdAt: 1493631067411, isVersionFrom: 'CXsqvJ3ArwpM7aQwg' }, { _id: 'HSitgQdFwYHqCjRax', createdAt: 1493631067411, isVersionFrom: false }, { _id: 'vhZZCKhyQgkNSGjqK', createdAt: 1493631077411, isVersionFrom: 'HSitgQdFwYHqCjRax' }, ]

我想要这个结果:

[ { _id: 'Jksfe6Aaof9hT8CW9', createdAt: 1493631067411, isVersionFrom: 'CXsqvJ3ArwpM7aQwg' }, { _id: 'vhZZCKhyQgkNSGjqK', createdAt: 1493631077411, isVersionFrom: 'HSitgQdFwYHqCjRax' }, ]

所以它基本上必须过滤掉所有旧版本的id。

1 个答案:

答案 0 :(得分:1)

更新使用下划线的可能解决方案:

$ ./bin/maxminsum
Enter number of scores: 5
Enter score [0]: 9
Enter score [1]: 3
Enter score [2]: foo
error: invalid input, try again.
Enter score [2]: 7
Enter score [3]: 8
Enter score [4]: bar
error: invalid input, try again.
Enter score [4]: 2

The max score is :9
The total score is:29