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

113
Visualizações
Necesito una buena manera de clasificar los nombres de los archivos en cada categoría de una matriz en javascript, pero cuando no tengo una coincidencia en un grupo general

Básicamente, tengo dos matrices, una es los tipos de archivos y la otra son los nombres reales de los archivos, por lo tanto, necesito verificar cada uno de los nombres de los archivos y buscar una cadena específica, para luego agruparlos, pero tiene algunos reglas, como, el grupo debe tener el nombre de orden ASC y el general debe tener los que no coinciden con un tipo y los que tienen el tipo en él, para los archivos de las nuevas versiones. (Necesito hacer esto con Javascript puro) Ejemplos:

 types: ["general","picture","document","annotation"] files: [ {name:"-t_picture_t-my_vacation.jpg"}, {name:"-t_document_t-my_curriculum.pdf"}, {name:"my_favorite_music.mp3"}, {name:"my_dance_video.mp4"}, {name:"-t_annotation_t-dont_forget.txt"}, ]

Los resultados esperados son algo como:

 [ {name:"my_dance_video.mp4"}, {name:"my_favorite_music.mp3"}, {name:"-t_picture_t-my_vacation.jpg"}, {name:"-t_document_t-my_curriculum.pdf"}, {name:"-t_annotation_t-dont_forget.txt"}, ]

Cualquier pregunta sobre, solo envíe un mensaje.

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

0

Bueno... un algoritmo simple será algo como esto

 const types = ["picture","document","annotation", "general"] const files = [ {name:"-t_picture_t-my_vacation.jpg"}, {name:"-t_document_t-my_curriculum.pdf"}, {name:"my_favorite_music.mp3"}, {name:"my_dance_video.mp4"}, {name:"-t_annotation_t-dont_forget.txt"}, ] const result = [] const matches = {} for (const file of files) { for (const type of types) { if (file.name.includes(type)) { result.push(file) matches[file.name] = true } else if (type == 'general' && !matches[file.name]) { result.unshift(file) } } } console.log(result)

La desventaja es que debemos esperar con la categoría general hasta el final porque solo cuando completamos la clasificación podemos agregar el resto de elementos sin duplicación.

Espero que te ayude a poner en marcha tu solución. Disfruta 😎

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