Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

153
Vistas
Obtenga todos los valores únicos de los objetos y asígnelos a la matriz con la clave correcta

Tengo una matriz de objetos para convertir en un objeto con una matriz de valores únicos asignados a las mismas claves.

¿Cómo puedo obtener esta salida?

//aporte

 let users = [ { id: 1, name: "Alan", surname: "Davis", age: 34, isAdmin: 'yes'}, { id: 2, name: "John", surname: "Doe", age: 35, isAdmin: 'no'}, { id: 3, name: "Monica", surname: "Bush", age: 25, isAdmin: 'no'}, { id: 4, name: "Sandra", surname: "Back", age: 23, isAdmin: 'no'}, { id: 5, name: "Jacob", surname: "Front", age: 34, isAdmin: 'yes'}, ];

//producción

 let unique = { id: [1, 2, 3 ,4 ,5], name: ['Alan', 'John', 'Monica', 'Sandra', 'Jacob'], surname: ['Davis', 'Doe', 'Bush', 'Back', 'Front'], age: [34, 35, 25, 23], isAdmin: ['yes', 'no'], }
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Puede usar Array.prototype.reduce() y para todos los elementos repetir con Array.prototype.forEach() y crear una matriz única con Set

Código:

 const users = [{ id: 1, name: 'Alan', surname: 'Davis', age: 34, isAdmin: 'yes' },{ id: 2, name: 'John', surname: 'Doe', age: 35, isAdmin: 'no' },{ id: 3, name: 'Monica', surname: 'Bush', age: 25, isAdmin: 'no' },{ id: 4, name: 'Sandra', surname: 'Back', age: 23, isAdmin: 'no' },{ id: 5, name: 'Jacob', surname: 'Front', age: 34, isAdmin: 'yes' },] const unique = users.reduce((a, c) => ( Object .entries(c) .forEach(([k, v]) => a[k] = [...new Set([...(a[k] || []), v])]), a ), {}) console.log(unique)

about 4 years ago · Juan Pablo Isaza Denunciar

0

aquí hay una manera

  1. Iterar sobre las claves del primer objeto en la matriz para producir una lista de claves
  2. Cree una matriz de los valores correspondientes. Filtre la matriz en busca de duplicados.
  3. Envuelva las claves y los valores de nuevo en un objeto

 let users = [ { id: 1, name: "Alan", surname: "Davis", age: 34, isAdmin: 'yes'}, { id: 2, name: "John", surname: "Doe", age: 35, isAdmin: 'no'}, { id: 3, name: "Monica", surname: "Bush", age: 25, isAdmin: 'no'}, { id: 4, name: "Sandra", surname: "Back", age: 23, isAdmin: 'no'}, { id: 5, name: "Jacob", surname: "Front", age: 34, isAdmin: 'yes'}, ]; let unique = Object.fromEntries( Object.keys(users[0]).map(k => [k, users.map(u => u[k]).filter((value, i, arr) => arr.indexOf(value) === i)] ) ); console.log(unique);

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda