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

156
Vistas
Comprobar si ha pasado la mitad de un período

Tengo un sistema donde el usuario puede elegir un periodo donde después de este periodo gana por ejemplo + 2% de la suma que ha elegido. Si intenta hacer una acción con esta suma antes de la mitad del período pierde un porcentaje de su valor. Entonces, lo que quiero saber es cómo calcular la mitad de una fecha.

En mi ejemplo:

Tengo, por ejemplo, en una tabla mysql la fecha en que puso la suma y la fecha en que finalizará el período definido. Entonces, si es 24-2-2022 y elige en 6 meses, habrá dos datos en la base de datos 24-2-2022 y 24-8-2022 . Lo que he hecho hasta ahora es split() la fecha para separar el día, el mes y el año. Pero aquí estoy atascado porque no sé cómo comparar todo esto para ver si el período está a mitad de camino o no.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Puedes escribir una función. Pero primero debe convertir su cadena en una cadena de fecha válida. entonces puede usar el objeto de fecha.

 d1 = "24-2-2022" d2 = "24-8-2022" function getDays(d1, d2) { _d1 = d1.split('-'); _d2 = d2.split('-'); date_1 = new Date(_d1[2] + '-' + _d1[1] + '-' + _d1[0]) date_2 = new Date(_d2[2] + '-' + _d2[1] + '-' + _d2[0]) return Math.floor((date_2 - date_1) / (1000*60*60*24)); } console.log(getDays(d1, d2) + " days")

about 4 years ago · Juan Pablo Isaza Denunciar

0

Puede usar los valores de día, mes y año para comparar si la diferencia entre el día de inicio y el día de hoy es mayor que la mitad de la diferencia entre el día de inicio y el día de finalización:

 let startDate = new Date(2022,1,24); //months are 0-indexed let endDate = new Date(2022,7,24); let halfDif = (endDate - startDate) / 2; //new Date() => today let isTodayAtLeastHalfway = new Date() - startDate >= halfDif;
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