Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

177
Views
¿Cómo puedo establecer una condición de igualdad para Fecha ahora y una fecha predefinida?

Estoy tratando de establecer la condición a continuación para ejecutar Condition1 si new Date(visitationDate) es igual a Date.now() .

En la interfaz, la fecha de visitación ingresa como Thu Nov 11 2021 13:52:33 GMT+0100 (West Africa Standard Time) y la convierto con una función al formato 2021-11-11T13:00:00.000Z antes de enviarlo a el back-end Estoy usando la condición de fecha en mi pregunta en el backend. Puedo revertir la conversión en la interfaz si resuelve mi problema.

Este es mi código actual utilizado en el backend

 if (new Date(visitationDate) == Date.now()) { Condition1 } else { Condition2 }

Mi pregunta es cómo puedo ejecutar Condition2 si la fecha de visita es menor que Date.now() o Date.now() es mayor que visitationDate. Quiero ejecutar Condition1 solo si visitationDate es la fecha actual o igual a Date.now() en una ventana de 24 horas.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Según una respuesta enviada anteriormente que se eliminó, estoy usando el método getHours() para normalizar la fecha y verificar si la diferencia es igual a cero. Probé con la fecha actual y devuelve verdadero. Cuando probé con la fecha anterior y la fecha futura, devuelve falso. Tenga en cuenta que los usuarios de mi código tienen la misma hora local.

 let d = new Date(visitationDate); d.setHours(15, 0, 0, 0) let now = new Date(); now.setHours(15, 0, 0, 0) if (now-d == 0) { Condition1 } else { Condition2 }
about 4 years ago · Juan Pablo Isaza Report

0

Parece que desea comparar fechas sin la parte de la hora, así que convierta la marca de tiempo de entrada en solo una fecha y compárela con la fecha local actual, por ejemplo

 // Convert standard toString format to YYYY-MM-DD without changing the date function reformatDate(s) { // Parse string as UTC+0 let d = new Date(s.replace(/GMT\+.*/,'GMT+0000')); // Return date only in ISO 8601 format return d.toISOString().substring(0,10); } // Return date as local YYYY-MM-DD function formatDate(d) { return d.toLocaleDateString('en-CA'); } let ts = 'Thu Nov 11 2021 13:52:33 GMT+0100 (West Africa Standard Time)'; // Date with some random time let d = new Date(2021,10,11,23,59,59); console.log(formatDate(d) + ' : ' + (reformatDate(ts) == formatDate(d))); // Compare to today d = new Date(); console.log(formatDate(d) + ' : ' + (reformatDate(ts) == formatDate(d)));

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!