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

239
Visualizações
Compacto de una sola línea para cada declaración de caso en una declaración de cambio - JavaScript

No pude encontrar ninguna documentación o preguntas sobre si es posible escribir las declaraciones de case en una declaración de cambio en una línea ni cuál es la mejor práctica y la forma de escribirlas en una línea en JavaScript.

Las preguntas más relacionadas fueron: Pregunta de CodeGrepper y Declaración de cambio para casos múltiples en JavaScript

Actualmente tengo una función con una declaración de cambio que devuelve el nombre de un producto:

 function returnProduct(product) { switch (product) { case 'aa': case 'AApple': return 'AApple'; case 'bb': case 'BananaBall': return 'BananaBall'; case 'ee': case 'ElephantElf': return 'ElephantElf'; default: return 'Sorry we don\'t have that yet'; } } console.log(returnProduct('aa')); console.log(returnProduct('error')); console.log(returnProduct('ee')); console.log(returnProduct('BananaBall'));

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

  • Solución 1

    Gracias a @Ryan Wheale, @Bergi y @TJ Crowder que me ayudaron a darme cuenta de que, dado que Javascript no requiere saltos de línea, todo podría escribirse en una sola línea separada por ; y no necesito poner ningún {} alrededor de las declaraciones de devolución. Si bien el siguiente fragmento de código responde a mi pregunta, también es importante mencionar que una sola línea como esta no es del todo legible y debe evitarse.

 function returnProduct(product) { switch (product) { case 'aa': case 'AApple': return 'AApple'; case 'bb': case 'BananaBall': return 'BananaBall'; case 'ee': case 'ElephantElf': return 'ElephantElf'; default: return 'Sorry we don\'t have that yet'; } } console.log(returnProduct('aa')); console.log(returnProduct('error')); console.log(returnProduct('ee')); console.log(returnProduct('BananaBall'));


  • Solución 2 : esta solución es un poco más legible y aún logra mi objetivo original de crear una declaración de switch compacta.

 function returnProduct(product) { switch (product) { case 'aa': case 'AApple': return 'AApple'; case 'bb': case 'BananaBall': return 'BananaBall'; case 'ee': case 'ElephantElf': return 'ElephantElf'; default: return 'Sorry we don\'t have that yet'; } } console.log(returnProduct('aa')); console.log(returnProduct('error')); console.log(returnProduct('ee')); console.log(returnProduct('BananaBall'));

Esta fue mi primera solución propuesta que resuelve mi problema, pero no la había probado lo suficiente y tenía algunos errores que la comunidad me ayudó a solucionar.

Espero que otros que hagan la misma pregunta puedan encontrar esto como una respuesta útil a la misma pregunta que yo tenía.

over 4 years ago · Santiago Trujillo Relatório

0

Parece que te has perdido la declaración de descanso. O intenta usar el diccionario

 var x ='aa':'AApple','AApple':'AApple','bb':'BananaBall', 'BananaBall':'BananaBall'}; var key='aa'; var z; if(x[key] !== undefined) return x[key];
over 4 years ago · Santiago Trujillo 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