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

324
Vistas
¿Cómo usar filter(), map() para trabajar con valores de una matriz? JavaScript

mi tarea es:

Implemente la función duplicateStudents(), que obtiene la variable "students" y filtra por estudiantes con el mismo número de matrícula. En primer lugar, proyectar todos los elementos en alumnos por número de matrícula. Después de eso, puede filtrar los duplicados con relativa facilidad. Al final del proyecto utilizando el siguiente formato: { matrikelnummer: (matrikelnummer), estudiantes: [ (estudiantes[i], estudiantes[j], ... ) ] }.

Implemente la función invalidGrades(), que obtiene la variable "calificaciones" y filtra las notas posiblemente incorrectas. Por ejemplo, para mantener una verificación manual lo más baja posible, la función debe determinar para qué números de matrícula se transmitieron varias calificaciones para el mismo curso. Ejemplo: Para el número de matrícula X, se transmitió un 2. 7 y un 2. 3 para el curso Y. Sin embargo, la función también tendría en cuenta el caso válido, es decir, para el número de matrícula X, una vez un 5,0 y una vez un 2 ,3 fueron transmitidos para el curso Y.

En esta tarea solo debe usar map(), reduce() y filter(). No implemente bucles for.

 function duplicateStudents(students) { return students // TODO: implement me } function invalidGrades(grades) { return grades .map((s) => { // TODO: implement me return { matrikelnummer: -1/* put something here */, grades: []/* put something here */, }; }) .filter((e) => e.grades.length > 0) }

Las variables alumnos y notas las tengo en un archivo aparte. Sé que podría ser útil cargar los archivos también, pero uno tiene 1000 líneas y el otro 500. Es por eso que no los estoy cargando. Pero espero que sea posible hacer la tarea sin los valores. Es importante decir que los valores se representan como una matriz ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Le daré un ejemplo del uso de reduce en duplicateStudents , eso no devuelve el formato esperado, pero puede continuar desde allí.

 const duplicateStudents = (students) => { const grouping = students.reduce((previous, current) => { if (previous[current.matrikelnummer]) previous[current.matrikelnummer].push(current); // add student if matrikelnummer already exist else previous[current.matrikelnummer] = [current]; return previous; }, {}); console.log(grouping); return //you could process `grouping` to the expected format in here };

Aquí hay preferencias para usted:

  • mapa
  • filtrar
  • reducir
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