Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

154
Visualizações
Quiero filas a columnas con tipo sabio en JavaScript. ¿Es posible?

Tengo una matriz de tipo múltiple, por ejemplo , tiempo de entrada o de salida , interrupción, interrupción, etc. aquí está la lista

 const data = [ { , entryDateTime : '02:28' , activityTypeId : 'Time In' , comments : 'dgdfgdfg' , isLeave : '' } , { timeSheetDetailActivityId : 0 , timeSheetDailyActivityId : 0 , entryDateTime : '03:28' , activityTypeId : 'Time Out' , comments : '2323' , isLeave : '' } , { , entryDateTime : '04:28' , activityTypeId : 'Break In' , comments : '2323' , isLeave : '' } , { timeSheetDetailActivityId : 0 , timeSheetDailyActivityId : 0 , entryDateTime : '05:28' , activityTypeId : 'Break Out' , comments : '2323' , isLeave : '' } , { , entryDateTime : '06:28' , activityTypeId : 'Time In' , comments : '2323' , isLeave : '' } , { , entryDateTime : '07:28' , activityTypeId : 'Time Out' , comments : '232323' , isLeave : '' } ]

quiero que la lista anterior me guste esto

 [ { , Time In : '02:28' , Time Out : '03:28' , Break In : '02:28' , Break Out : '03:28' } , { , Time In : '06:28' , Time Out : '08:28' , Break In : '02:28' , Break Out : '03:28' } ]

¿Como es posible?

Estaré completamente agradecido a todos. Estoy atascado desde hace 2 días. Por favor, ayúdenme o dediquen algo de tiempo. Gracias por adelantado.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Claro, pan comido.

Cree un objeto que realice un seguimiento de sus datos por ID de actividad y luego léalo.

 const groupedData = {}; data.forEach(({ timeSheetDailyActivityId, activityTypeId, entryDateTime }) => { // Retrieve group object from `groupedData`, // initialize one (assigning it back) if it doesn't yet exist. const group = groupedData[timeSheetDailyActivityId] || (groupedData[timeSheetDailyActivityId] = { timeSheetDailyActivityId }); // Add the activity->datetime mapping to the group. group[activityTypeId] = entryDateTime; }); // Since `groupedData` is an object and we want an array, use `Object.values`. console.log(Object.values(groupedData));

Esto se imprime, por ejemplo (después de cambiar un poco los datos de entrada del ejemplo para que haya varios dailyId ):

 [ { timeSheetDailyActivityId: 0, 'Time In': '02:28', 'Time Out': '03:28', 'Break In': '04:28', 'Break Out': '05:28' }, { timeSheetDailyActivityId: 1, 'Time In': '06:28', 'Time Out': '07:28' } ]
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda