Esta publicación fue muy útil Obtener la fecha del próximo lunes cuando se trata de averiguar cómo obtener el próximo lunes en horario UTC. Tengo el siguiente problema.
Quiero obtener el próximo lunes en la zona horaria del usuario A y luego convertirlo a la zona horaria B del usuario. ¿Cómo puedo hacer eso?
Entonces, si la zona horaria del usuario A es América/Nueva_York y la fecha es el 2 de enero de 2022, quiero obtener el próximo lunes en esa zona horaria. Luego convierta esa fecha a la zona horaria del usuario B. ¿Cómo puedo hacer eso usando javascript o moment js?
El objetivo es obtener la próxima disponibilidad de un usuario para que otro usuario en una zona horaria diferente pueda programar una cita con él.
Si estoy respondiendo bien a su pregunta, desea obtener la fecha en una zona horaria diferente, luego obtenga el próximo lunes y luego conviértalo a la zona horaria que desee. Si es así, esto debería funcionar:
Nota: esto usa las bibliotecas Moment js y moment time zone. La biblioteca de "zona horaria de momento con datos" es un poco voluminosa, por lo que si le preocupa el rendimiento, es posible que CDN no sea el camino a seguir, pruebe el nodo js.
function getNextMonday() { const now = new Date() const today = new Date(now) today.setMilliseconds(0) today.setSeconds(0) today.setMinutes(0) today.setHours(0) const nextMonday = new Date(today) do { nextMonday.setDate(nextMonday.getDate() + 1) // Adding 1 day } while (nextMonday.getDay() !== 1) return nextMonday } var cur_date = moment(getNextMonday()); //this gives the corrsponding date on specific time zone of next monday console.log(cur_date.tz('America/Los_Angeles').format()) <script src="https://momentjs.com/downloads/moment.js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.31/moment-timezone-with-data.js"></script>