Método de deduplicación de matriz nuevo Conjunto

Dividido en dos casos: 1 matriz ordinaria; 2 matriz de objetos

1 arreglo ordinario

const arr=[1,2,3,2,5,6,3]
const newarr=[...new Set(arr)]
console.log(newarr)//[1,2,3,5,6]

Matriz de 2 objetos, si existe la siguiente matriz

const data = [
  { name: '张三', mobile: '13811112222', idCard: '1234567890' },
  { name: '李四', mobile: '13911113333', idCard: '2345678901' },
  { name: '王五', mobile: '13811112222', idCard: '3456789012' },
  { name: '赵六', mobile: '13711114444', idCard: '4567890123' },
  { name: '钱七', mobile: '13911113333', idCard: '5678901234' }
];

El propósito de la operación es filtrar registros con campos móviles únicos

Primero saca todos los valores del campo móvil en los datos

const mobile=data.map(item=>item.mobile)

El segundo paso es deduplicar dispositivos móviles

const newmobile=[...new Set(mobile)]

El tercer paso es recorrer los datos con el valor en newmobile y filtrar los registros correspondientes

const newdata=mobilenew.map(item=>{
return data.find(item=>item.mobile===item)
})

Implementación completa del código

const data = [
  { name: '张三', mobile: '13811112222', idCard: '1234567890' },
  { name: '李四', mobile: '13911113333', idCard: '2345678901' },
  { name: '王五', mobile: '13811112222', idCard: '3456789012' },
  { name: '赵六', mobile: '13711114444', idCard: '4567890123' },
  { name: '钱七', mobile: '13911113333', idCard: '5678901234' }
];
const mobile=data.map(item=>item.mobile)
const mobilenew=[...new Set(mobile)]
const newdat=mobilenew.map(item=>{
	return data.find(itmes=>itmes.mobile===item)
})
console.log(newdat)
// [
//   { name: '张三', mobile: '13811112222', idCard: '1234567890' },
//   { name: '李四', mobile: '13911113333', idCard: '2345678901' },
//   { name: '赵六', mobile: '13711114444', idCard: '4567890123' }
// ]

Supongo que te gusta

Origin blog.csdn.net/zhtxilyj/article/details/130540631
Recomendado
Clasificación