【发布时间】:2018-06-08 18:07:28
【问题描述】:
我有一组看起来像这样的对象:
{
"brandid": id,
"brand": string,
"id": id,
"categoryId": id,
"category": string,
"factory": string,
"series": string,
"status": 0,
"subStatus": 1
}
如果系列属性值与数组中其他对象中的另一个系列属性值匹配,则需要从数组中删除该对象。
目前我试图将它们推送到一个重复的数组中:
const seriesResCopy = seriesRes;
const dupArray = []
for (const thing of seriesResCopy) {
for (const item of seriesRes) {
if (thing.series === item.series) {
dupArray.push(item);
}
}
}
但这不起作用。从示例来看,我的问题似乎是我没有要查找的重复值的明确列表。
任何帮助将不胜感激。
【问题讨论】:
-
push()不会从数组中删除元素,它只是将引用(如果是原始数组,则为复制)放入另一个数组。 -
你实际上并没有删除任何东西。这可以通过
.splice完成 -
所以你想过滤掉重复、三次等?只保留第一个实例?
-
我想过滤重复并保留第一个实例。
-
@mplungjan“对象数组”不是“我有一个对象”。不要改变问题!
标签: javascript arrays angular