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

149
Vistas
¿Cómo hago para que el bot envíe solo 2 periodos de tiempo?

Así que simplemente quiero que mi bot diga: Si el texto tiene una semana especificada, enviará las semanas y los días restantes. Si tiene días, enviará los días y las horas restantes. Ejemplo:

Tiempo restante: 2 semanas, 3 días Tiempo restante: 1 día, 5 horas

La parte del código que tiene las semanas, Minutos, Horas, Segundos:

 let gwTime = ms(time); let timeRemain = gwTime weeks = Math.floor((timeRemain / (24*60*60*1000))/7); weeksms = Math.floor((timeRemain % (24*60*60*1000))/7); days = Math.floor(weeksms / (24*60*60*1000)); daysms = weeksms % (24*60*60*1000); hours = Math.floor(daysms / (60*60*1000)); hoursms = timeRemain % (60*60*1000); minutes = Math.floor(hoursms / (60*1000)); minutesms = timeRemain % (60*1000); sec = Math.floor(minutesms / 1000); // weeks = Math.floor(days / 7); let gwEmbed = new MessageEmbed() .setTitle(`${prize}`) // .setDescription(`**Time Remaining**${weeks} weeks ${days} days // .setDescription(`**Hosted By**`) // ${hours} hours ${minutes} minutes ${sec} seconds`) .addField('**Time Remaining: **', `${weeks} weeks ${days} days ${hours} hours ${minutes} minutes ${sec} seconds`, true) .addField('**Hosted By**', `<@965460337275064351>`, true)
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

No estoy seguro de cuál es la forma en que se activa el mensaje del bot, así que asumí que el bot enviará un mensaje que mostró su código al ejecutar un comando.

Puede usar la declaración if para determinar si el valor es verdadero o falso, y verificar si tiene un valor real. Para que se visualice, lo mostraré en código.

 var No = 0; if (!No) console.log('No Number')

En esta situación, No pasa a la opción negativa de la declaración condicional, ya que su valor es 0 . Por lo tanto, verá 'Sin número' en la consola.

Volviendo a su pregunta, puede aplicar las declaraciones if para verificar si quedan semanas o días.

 if (weeks) { // Have at least 1 week gwEmbed.addField('**Time Remaining: **', `${weeks} weeks ${days} days`, true) } else if (days) { // Have at least 1 day gwEmbed.addField('**Time Remaining: **', `${days} days ${hours} hours`, true) } else { // No week, No day }

Además de su pregunta, dudo que haya algunos errores en el código de conversión de tiempo. Te recomendaría usar la variable por separado. Para instantes, considere usar timeRemain para cada variable ms en lugar de usar la superior y hacerla encadenar.


Para sus referencias, aquí está la documentación de la declaración If:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/if...else

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