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

186
Visualizações
¿Hay alguna manera de acortar una declaración if en su mayoría repetitiva?

Estoy tratando de hacer una conversión de número a mes. Estoy tratando de hacerlo con una instrucción if, por ejemplo, if(num===0) {month = "January";} else if(num===1) {month = "February";} etc. ¿Existe una forma de acortar esto? Imagino que sería algo así como if(num===[0,1,2,3,4,5]) {month = ["January", "February", "March", "April", "May", "June"}

En otras palabras, ¿hay algún tipo de forma de usar una matriz con una función if, mientras que la función if pasa por cada uno respectivamente? Por cierto, estoy usando la biblioteca p5, si eso hace alguna diferencia.

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Creo que la mejor solución sería usar una serie de meses como esta:

 const month = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ]; const answer = month[num];
about 4 years ago · Juan Pablo Isaza Relatório

0

Puede usar una declaración de cambio

 var num = 0; switch (num) { case 0: month = "January"; break; case 1: month = "February"; break; case 2: month = "March"; break; case 3: month = "April"; break; case 4: month = "May"; break; case 5: month = "June"; break; default: day = "Unknown Month"; }

Leer más: https://www.w3schools.com/jsref/jsref_switch.asp https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/switch

about 4 years ago · Juan Pablo Isaza Relatório

0

si sus rangos son en su mayoría de naturaleza contigua, una forma es crear previamente una cadena de búsqueda que también sea simultáneamente las claves y los valores, como

1:JAN:2:FEB:3:MAR: etc

con una naturaleza de ancho constante. incluso 1:J:2:F:3:M:4:A….(Quiero decir que es factible escribir todos los nombres allí, pero luego necesitará algo de relleno).

y cuando se llame a la función, use una combinación de funciones de coincidencia o de subcadena para "cortar" las que necesita primero, diga " 4:APR:5:MAY:6:JUN:7:JUL " (tendrá que sea creativo con sus propias notaciones cuando use letras individuales cada una y cuando 3-5, 4-8 y 1-6-7 se dupliquen... o simplemente use base-12)

si un prefijo de 3 letras ya satisface sus necesidades, entonces haga un gsub de alta velocidad para deshacerse de todos los números y delimitadores, y cámbielos a una coma o algo así.

y si opta por los meses completos, no sé cuánto ayudará en absoluto, pero tal vez pueda regex sub-en los sufijos comunes de 9-10-11-12 principalmente en una sola toma, y también 1-2. 5 ya es su nombre completo.

otro enfoque es que si sus rangos generalmente abarcan más de la mitad del año, incluso un enfoque de "resta" podría ser preferible a uno de "suma": siempre comience con la cadena completa con todos los meses deletreados. luego, para los meses que faltan en su entrada, bórrelos y devuelva lo que sobra.

y diga si sus rangos tienden a agruparse dentro de la misma mitad del año en lugar de a horcajadas, entonces incluso puede dividir esa clave de índice en 2 para hacerlo más rápido (aunque los ahorros son pequeños)

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