Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

74
Views
Javascript Gran cantidad de condiciones

Estoy creando un cuestionario para determinar qué tipo de piel tienes basado en 3 preguntas (grasa, seca, etc.)

¿Es la mejor manera de escribir la lógica para esto, algo como lo siguiente o hay una forma más eficiente de hacerlo en términos de rendimiento?

 if (q1 == 1 && q2 == 1 && q3 == 1){ skinType = "DRY" } else if (q1 == 1 && q2 == 1 && q3 == 2){ skinType = "DRY" } else if (q1 == 1 && q2 == 1 && q3 == 3){ skinType = "DRY" } else if (q1 == 1 && q2 == 1 && q3 == 4){ skinType = "DRY" } else if (q1 == 1 && q2 == 2 && q3 == 1){ skinType = "DRY" } else if (q1 == 1 && q2 == 2 && q3 == 2){ skinType = "DRY" } else if (q1 == 1 && q2 == 2 && q3 == 3){ skinType = "DRY" } else if (q1 == 1 && q2 == 3 && q3 == 1){ skinType = "DRY" } else if (q1 == 1 && q2 == 3 && q3 == 2){ skinType = "DRY" } else if (q1 == 1 && q2 == 4 && q3 == 1){ skinType = "DRY" } else if (q1 == 1 && q2 == 4 && q3 == 2){ skinType = "DRY" } else if (q1 == 1 && q2 == 2 && q3 == 4){ skinType = "COMBO" } else if (q1 == 1 && q2 == 3 && q3 == 3){ skinType = "COMBO" } else ....etc
about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

En términos de rendimiento, no hay nada más rápido que una simple condición, pero no en términos de legibilidad y mantenimiento del código, que también son importantes en la codificación.

about 4 years ago · Juan Pablo Isaza Report

0

Depende de tus datos. Intente encontrar patrones o combinaciones de entrada que determinen exactamente la clase de destino (por ejemplo, q1 ==1 && q2 == 1 es siempre "DRY") y elimine las líneas redundantes.

Dado que muchas de sus combinaciones de entrada parecen dar como resultado la misma clase, es decir, DRY, COMBO, también podría intentar crear condiciones anidadas similares a un árbol de decisión .

 if (q1 == 1) { if (q2 == 1) { skinType = "DRY"; } else if (q2 == 2) { if (q3 == 4) { skinType = "COMBO"; } else { skinType = "DRY"; } } //... }

Una opción más sofisticada para construir buenos árboles de decisión es el algoritmo ID3 .

about 4 years ago · Juan Pablo Isaza Report

0

Puede usar la declaración de cambio de caso para un mejor rendimiento ("la declaración de cambio es más rápida en la mayoría de los casos en comparación con if-else").

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!