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

136
Vistas
Condición de refactorización más eficiente

Escribí un código con condición y para mí tengo muchas repeticiones de código similar. ¿Puedo hacer que este código sea más eficiente con un refactor? Después de investigar un poco, eso es lo mejor que puedo hacer, es solo una parte del código, no todo el https://codepen.io/manofthelake/pen/GRyMzgW?editors=1010

 const firstNumber = 50 const lastNumber = 1000 const defaultMinNumber = firstNumber + Math.round((lastNumber - firstNumber) / 2 ) const selection = { min: null max: null } if (Object.values(selection).every(s => s === null)) { selection.min = defaultMinNumber selection.max = lastNumber } else if (selection.min < firstNumber) { savedSelection = {...selection} selection.min = (selection.max > firstNumber) ? firstNumber: defaultMinNumber selection.max = (selection.max > firstNumber) ? selection.max : lastNumber } else if (Object.values(savedSelection).every(s => s !== null)) { selection.min = (savedSelection.max > firstNumber) ? selection.min : defaultMinNumber selection.max = (savedSelection.max > firstNumber) ? selection.max : lastNumber }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Observaciones/Refactorización :

  • ¿Cuál es la diferencia entre lastNumber y defaultMinNumber ya que ambos devolverán el mismo valor? Parece que algo se ha perdido en ese cálculo.

  • En lugar de un bucle en todos y cada uno de los elementos, puede usar el operador coalescente nulo (??) que devuelve su operando del lado derecho cuando su operando del lado izquierdo es nulo o indefinido, y de lo contrario devuelve su operando del lado izquierdo.

     selection.min ?? defaultMinNumber selection.max ?? lastNumber
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