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

104
Vistas
JS Build If (condiciones) dinámicamente de acuerdo con diferentes contenidos de matriz

JS

 let data1 = [{'id' : '0001', 'area' : 'Paris', 'price' : '100', 'year': '2022'}]
//should construct condition if(id === '0001' && area === 'Paris' && price === '100 && year === '2022')

let data2 = [{'price' : '300', 'year': '2021'}]
//should construct condition if(price === '300' && year === '300')

let data3 = [{'area' : 'Athens'}]
//should construct condition if(area === 'Athens')
// no && when we have only one condition

//my code attempt fo far

let ArrayNew = [];
let operator_and = ' && ';

for(let i = 0; i < data1.length; i++) {
 ArrayNew += data1.map(x => Object.keys(x) + ' === ' + operator_and);
}

console.log('if ('+ ArrayNew +')'); // if (id,area,price,year === && )

Pregunta

Estoy tratando de crear condiciones dinámicas dentro de una declaración if() de acuerdo no solo con la cantidad de claves sino también con las claves de cada matriz dada.

Espero crear algo como esto.

if (generated_conditions) { .... }

almost 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Puede ser intentar algo como esto

 let data1 = [{'id' : '0001', 'area' : 'Paris', 'price' : '100', 'year': '2022'}]

data1.forEach((item) => {
 let condition = '';
 let keys = Object.keys(item);
 keys.map((k) => {
 if (condition) {
 condition += ` && ${k} == ${item[k]}`
 } else {
 condition = `${k} == ${item[k]}`
 }

 })
 console.log(condition)
})

almost 4 years ago · Santiago Trujillo 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