从对象数组过滤

titanlux619

我有一个Vue.js网络应用程序,该应用程序使用来自express.jsAPI的数据并在表中显示响应数组。数组的每个对象都有由组成的唯一ID Name_Version(例如P.90.001000-0004_2)。问题是我只需要显示每个版本的最新版本。例如,如果API响应为:

[{id: P.90.001000-0004_1}, {id: P.90.001000-0004_2}, {id: P.90.001000-0004_3}, {id: P.90.002222-0025_1}, {id: P.90.002222-0025_2}]

表中显示的结果数组为:

[{id: P.90.001000-0004_3}, {id: P.90.002222-0025_2}]

对我来说,要达到这个结果是不可能的,有人可以帮助我吗?

阿尔贝托·特林达德·塔瓦雷斯

您可以构建一个将ID的一部分(不包括版本)映射到整个对象的对象,并且可以在此映射中仅保留每个项目的最新版本:

const data = [{id: 'P.90.001000-0004_1'}, {id: 'P.90.001000-0004_2'}, {id: 'P.90.001000-0004_3'}, {id: 'P.90.002222-0025_1'}, {id: 'P.90.002222-0025_2'}];
const map = {};

data.forEach((item) => {
  const [id, version] = item.id.split('_');
  const latestItem = map[id];
  
  if (!latestItem || latestItem.id.split('_')[1] < version) {
    map[id] = item;
  }
});

const filteredData = Object.values(map);
console.log(filteredData);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

按键数组过滤对象

来自分类Dev

按数组过滤对象

来自分类Dev

按键数组过滤对象

来自分类Dev

将对象数组过滤为对象

来自分类Dev

如何用数组过滤对象数组

来自分类Dev

如何用数组过滤对象

来自分类Dev

使用平面数组过滤JSON对象

来自分类Dev

Mongo按对象数组过滤文档

来自分类Dev

如何按角色数组过滤对象?

来自分类Dev

如何用数组过滤对象

来自分类Dev

使用平面数组过滤JSON对象

来自分类Dev

对象数组过滤 angular2

来自分类Dev

按 id 数组过滤对象

来自分类Dev

基于对象属性的数组过滤

来自分类Dev

用子数组过滤对象

来自分类Dev

基于数组过滤对象的属性。并获取过滤后的对象

来自分类Dev

lodash:使用不同的对象数组过滤对象数组

来自分类Dev

将嵌套的对象数组过滤为对象数组

来自分类Dev

通过嵌套的对象值数组过滤对象数组

来自分类Dev

根据其他对象数组过滤对象数组

来自分类Dev

根据对象数组过滤对象数组返回相同的结果

来自分类Dev

Javascript:按字符串数组过滤对象数组

来自分类Dev

按ID数组过滤原始对象数组

来自分类Dev

使用基于嵌套值的数组过滤对象数组

来自分类Dev

如何按动态对象数组过滤数组?

来自分类Dev

JS-用数组过滤数组(包括对象)

来自分类Dev

无法根据嵌套数组过滤对象数组

来自分类Dev

lodash 按 Angular 5 数组过滤对象数组

来自分类Dev

PHP 数组过滤