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

143
Vistas
Cómo comparar dos matrices y luego devolver la suma de todos los elementos de la matriz antes del elemento modificado de la matriz

Tengo dos matrices en las que necesito verificar la diferencia y devolver la suma de todos los elementos de la matriz antes del elemento modificado y lo incluye.

Actualmente tengo dos matrices de altura de área que se actualizan cuando se cambia el valor de entrada. También se pueden cambiar 2 o más elementos de la matriz, luego es necesario sumar todos los elementos cambiados y todos los elementos antes del último elemento cambiado.

Por ejemplo matrices:

let oldArea = [3, 4, 2]

let newArea = [3, 6, 2]

Intenté algo como esto (hace su trabajo parcialmente, pero la longitud de la matriz puede ser de 5 o más elementos, por lo que esta solución es mala):

 let oldArea = [3, 4, 2] let newArea = [3, 6, 2] let changedArea = []; if ( oldArea[0] !== newArea[0] && oldArea[1] === newArea[1] ) { changedArea.push(newArea[0]); } else if ( oldArea[1] !== newArea[1] && oldArea[0] === newArea[0] && oldArea[2] === newArea[2] ) { changedArea.push(newArea[0] + newArea[1]); } else changedArea.push(newArea.reduce((a, b) => a + b, 0)); let changedAreaHeight = changedArea.reduce((a, b) => a + b, 0); console.log(changedAreaHeight)

Ejemplo

Estaré agradecido por cualquier consejo con otras soluciones.

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

0

Puede usar un bucle for simple y romper cuando los elementos no son los mismos

 let oldArea = [3, 4, 2] let newArea = [3, 6, 2] let final = 0; for (let i = 0; i < newArea.length; i++) { if (newArea[i] === oldArea[i]) { final += newArea[i] } else { final += newArea[i] break; } } console.log(final)

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