Clase Date en JavaScript
Una de las cosas más complicadas de cualquier lenguaje es trabajar con fechas. Esto es porque hay gente que para representar fechas y horas toma un sistema no decimal ( los meses en unidades sobre 12, las horas sobre 24 y los minutos y segundos sobre 60). Para el ordenador es ilógico trabajar con números bonitos y redondeados.
La clase date simplifica y automatiza la conversión entre las representaciones horarias del ordenador y la humana.
La clase date de JavaScript sigue el estándar de UNIX para almacenar los datos horarios como el número de milisegundos desde el día 1 de enero de 1970 a las 0:00. Esta fecha se denomina «la época».
Aunque la clase date no tiene propiedades, tiene varios métodos. Para usar la clase date hay que entender cómo construir un objeto de esta clase. Para eso hay tres métodos:
– new Date( ), inicializa un objeto con la hora y fecha actual.
– new Date(string_dato), inicializa un objeto con el argumento string_dato. El argumento debe ser de la forma «Mes día, año» como «Noviembre 29, 1990».
– new Date( año, mes, día), iniciliaza un objeto tomando 3 enteros que representan el año, mes y día. NOTA: los meses tienen como base el 0, lo que significa que 2 corresponde con el mes de marzo y 10 con el mes de noviembre.
Métodos:
– getDate ( ), devuelve el número de día del mes (1-31).
– getDay ( ), devuelve el número de día de la semana (0-6).
– getHours ( ), devuelve el número de horas del día (0-23).
– getMinutes ( ), devuelve el número de minutos de la hora (0-59)
– getMonth ( ), devuelve el número de mes del año (0-11).
– getSeconds ( ), devuelve el número de segundos del minuto (0-59)
– getTime ( ), devuelve la hora.
– getYear ( ), devuelve el año.
– setDate ( ), fija la fecha.
– setHours ( ), fija el número de horas del día.
– setMinutes ( ), fija el número de segundos del minuto.
– setMonth ( ), fija el número de mes.
– setSecond ( ), fija el número de los segundos del minuto.
– setTime ( ), fija la hora.
– setYear ( ), fija el año.
Fuente: Apuntes de informática III, Escuela Superior de Ingenieros de la Universidad de Navarra.