Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

197
Visualizações
¿Cuál es la mejor manera de usar un bucle for en una instrucción if/else que realiza una tarea similar?

En el siguiente código, incluso si la instrucción if/else se evalúa como verdadera o falsa, se llama a la función doSomething() . Lo que me preguntaba es si hay una manera de refactorizar este código para que sea "DRYer". En mi código real, el cuerpo del bucle es más largo que una sola función que se llama, por lo que creo que vale la pena refactorizarlo.

 if (somethingIsTrue) { array1.forEach(val => { doSomething(val); }); } else { array2.forEach(val => { doSomething(val); }); }
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

El operador condicional se puede utilizar aquí. Probablemente tampoco sea necesario el contenedor de funciones anónimas.

 (somethingIsTrue ? array1 : array2).forEach(doSomething);
about 4 years ago · Juan Pablo Isaza Relatório

0

Aislaría la lógica en una función común y le pasaría la matriz. La función no necesita saber sobre qué matriz se está iterando y esa lógica de decidir qué matriz se puede manejar fuera de la función.

 let somethingIsTrue = true; const mArr1 = [1, 2, 3, 4, 5]; const mArr2 = [6, 7, 8, 9, 10]; businessLogic(somethingIsTrue ? mArr1 : mArr2); somethingIsTrue = !somethingIsTrue; console.log('---------------------------'); businessLogic(somethingIsTrue ? mArr1 : mArr2); function businessLogic(mArr) { mArr.forEach(val => console.log(val)); }

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda