如何判断数组对象中的重复数据并统计重复次数?
如何判断数组对象的重复数据并统计重复次数?
给定一个数组对象,其中包含多个数据项,每个数据项都有一个唯一的字段"NO"。需要根据"NO"字段判断是否存在重复数据,并为每个数据项添加一个新的字段"重复次数"来显示重复的次数。
以下是一个代码示例,演示如何实现这一功能:
const list = [ { DF: 343, Fstep: 0.2, NO: 1004 }, { DF: 344, Fstep: 0.2, NO: 1005 }, { DF: 345, Fstep: 0.2, NO: 1004 }, { DF: 346, Fstep: 0.2, NO: 1004 }, { DF: 347, Fstep: 0.2, NO: 1006 }, { DF: 348, Fstep: 0.2, NO: 1005 } ]; const result = list.reduce((s, v) => { const index = s.findIndex((it) => it.NO === v.NO); if (index !== -1) { s[index] = { ...v, startTime: s[index].startTime, endTime: getNowDate(), count: ++s[index].count }; } else { s.push({ ...v, count: 1, startTime: getNowDate(), endTime: getNowDate() }); } return s; }, []); console.log(result);
此代码对数组对象进行了循环,使用reduce方法将重复的数据项合并并更新count字段的值。
以上就是如何判断数组对象中的重复数据并统计重复次数?的详细内容,更多请关注其它相关文章!