Javascript 如何将数组中id为的对象保留在1个副本中?
如何将数组中id为的对象保留在1个副本中? 我需要在数组中只保留对象而不重复idJavascript 如何将数组中id为的对象保留在1个副本中?,javascript,Javascript,如何将数组中id为的对象保留在1个副本中? 我需要在数组中只保留对象而不重复id let data = [ {id: 257, oldPoleNumber: "16056E", address: "1", jobWo: "Job6", dateWorked: "05/20/21"}, {id: 257, oldPoleNumber: "10050E", address: &qu
let data = [
{id: 257, oldPoleNumber: "16056E", address: "1", jobWo: "Job6", dateWorked: "05/20/21"},
{id: 257, oldPoleNumber: "10050E", address: "2", jobWo: "Job0", dateWorked: "05/20/21"},
{id: 257, oldPoleNumber: "13053E", address: "3", jobWo: "Job3", dateWorked: "05/20/21"},
{id: 260, oldPoleNumber: "10050E", address: "1", jobWo: "Job0", dateWorked: "05/20/21"},
{id: 260, oldPoleNumber: "16056E", address: "2", jobWo: "Job6", dateWorked: "05/20/21"}
]
const test =data.filter(item => !data.some(el => el.id === item.id))
console.log(test)
我需要
let data = [
{id: 257, oldPoleNumber: "16056E", address: "1", jobWo: "Job6", dateWorked: "05/20/21"},
{id: 260, oldPoleNumber: "16056E", address: "2", jobWo: "Job6", dateWorked: "05/20/21"}
]
这是因为您在
数据数组中反复搜索,
因此该ID将始终存在,因此搜索时将始终返回true
let数据=[
{id:257,oldPoleNumber:“16056E”,地址:“1”,jobWo:“Job6”,工作日期:“05/20/21”},
{id:257,oldPoleNumber:“10050E”,地址:“2”,jobWo:“Job0”,工作日期:“05/20/21”},
{id:257,oldPoleNumber:“13053E”,地址:“3”,jobWo:“Job3”,工作日期:“05/20/21”},
{id:260,oldPoleNumber:“10050E”,地址:“1”,jobWo:“Job0”,工作日期:“05/20/21”},
{id:260,oldPoleNumber:“16056E”,地址:“2”,jobWo:“Job6”,工作日期:“05/20/21”}
];
让uniqueData=[];
data.forEach((项目)=>{
isContains=uniqueData.find(it=>it.id==item.id);
如果(!isContains){
uniqueData.push(项目);
}
})
console.log(uniqueData)代码>首先,在循环过程中跟踪对象中的所有id,然后检查该id是否已存在于对象中,如果已存在,则不要将其推送到数组中
let数据=[
{id:257,oldPoleNumber:“16056E”,地址:“1”,jobWo:“Job6”,工作日期:“05/20/21”},
{id:257,oldPoleNumber:“10050E”,地址:“2”,jobWo:“Job0”,工作日期:“05/20/21”},
{id:257,oldPoleNumber:“13053E”,地址:“3”,jobWo:“Job3”,工作日期:“05/20/21”},
{id:260,oldPoleNumber:“10050E”,地址:“1”,jobWo:“Job0”,工作日期:“05/20/21”},
{id:260,oldPoleNumber:“16056E”,地址:“2”,jobWo:“Job6”,工作日期:“05/20/21”}
]
常数res=[]
常量trackedds={}
for(数据常数){
如果(!(TrackEds中的d.id)){
恢复推力(d)
}
trackedds[d.id]=真
}
console.log(res)
您如何确定要保留哪一个,因为它不是id的第一个实例,因为260
将有一个jobWo
的Job0
。