Ya vimos cómo saber la fecha de mañana en PHP. Veamos hoy cómo podemos saber la fecha de ayer y la fecha de mañana en JavaScript.
Usaremos la clase Date
y algunas operaciones matemáticas simples.
Antes de nada, dejo la documentación oficial de la clase Date
aquí.
Eso es por si quieres formatearla, ya que un objeto de esa clase no está formateado.
Puedes llamar a los métodos getYear
, getMonth
, getDate
, entre otros e ir concatenándolos o usándolos de acuerdo a tus necesidades.
Con PHP vimos que se suman y restan segundos. Con JavaScript será lo mismo pero en milisegundos.
Todas las fechas que existen (o bueno, todas después de 1970) se pueden representar con un número entero positivo, el cual es llamado tiempo Unix.
Este tiempo empieza el 1 de enero de 1970, o sea que el 1 de enero de 1970 a las 00:00:01 había pasado un segundo, lo que serían mil milisegundos. Imagina cuántos millones de milisegundos han pasado desde ese tiempo hasta ahora.
Pues el tiempo en milisegundos no debe preocuparnos, simplemente lo usaremos para hacer sumas. Si obtenemos ese tiempo en un instante, y le sumamos o restamos un día, podemos saber la fecha de distintos tiempos.
Es decir, si por ejemplo el tiempo del 5 de octubre del 2018 es 1500, y un día en milisegundos equivale a 10, hacemos la suma y tendremos 1510 milisegundos, y a este número más tarde lo pasamos a un objeto fecha para poder sacarle toda la información como el año, mes, etcétera.
Obviamente lo de arriba es un ejemplo para hacer fáciles las operaciones, en realidad el tiempo en milisegundos justo ahora es 1538750815776 y un día expresado en esa unidad de medida es 86400000.
Por cierto, antes de continuar te recomiendo leer:
Diferencias entre let, var y const
Funciones flecha en JavaScript
Son artículos de programación que te ayudarán a entender el código de abajo. Esas funciones son los nuevos estándares de JS y recomiendo aprenderlos.
Basta de charlas, hora del código. Ponemos todo en una función, dicha función no recibe nada y devuelve una instancia de la clase Date
, es decir, un objeto.
Obtenemos la fecha de hoy, le sumamos los milisegundos de un día, y creamos un nuevo objeto de tipo Date
utilizando el constructor que recibe un entero con milisegundos. Finalmente lo regresamos.
Es casi lo mismo de arriba pero restamos en lugar de sumar. Queda así:
Es exactamente lo mismo que arriba, únicamente cambiamos el operador para realizar una resta.
Si queremos implementar este código en Node.JS, o sea, JS en el lado del servidor, te recomiendo leer cómo ajustar las fechas de JavaScript, ya que te dará resultados inesperados por las zonas horarias.
En caso de que lo ejecutes del lado del cliente, nada debería preocuparte.
El código no es nada si no se ejecuta. En mi caso lo ejecuté en la consola del navegador con estos resultados:
Como vemos, los resultados son correctos. Únicamente sería cosa de formatear esa fecha para tener, por ejemplo, algo como “2018-10-08”.
En mi blog te he enseñado a usar youtube-dl para descargar vídeos con permiso del…
Siguiendo con los tutoriales que consumen la API de los Bots de Telegram con cURL…
En un post previo te enseñé a enviar un mensaje en nombre de un Bot…
En este artículo te voy a mostrar una guía para imprimir en una impresora térmica…
La impresión de un PDF en cualquier impresora se puede automatizar con un bot de…
Hoy te enseñaré cómo enviar un mensaje a un usuario desde un bot de Telegram…
Esta web usa cookies.