mozilla
Los resultados de tu búsqueda

    Objeto Date

     

    Objeto Date

    JavaScript no posee un tipo de dato para fechas [date]. Sin embargo, puede utilizar el objeto Date y sus métodos para trabajar con fechas y tiempos en sus aplicaciones. El objeto Date posee un extenso número de métodos para configurar, obtener y manipular fechas. Este no posee ninguna propiedad.

    JavaScript manipula las fechas similarmente a Java. Los dos lenguajes poseen muchos de los mismos métodos para fechas y ambos lenguajes almacenas las fechas como un número de milisegundos desde Enero 1, 1970, 00:00:00.

    El dominio del objeto Date es -100,000,000 días hasta 100,000,000 días relativos al 01 de Enero de 1970 UTC.

    Para crear un objeto Date:

    NombreObjetoDate = new Date([parámetros])
    

    donde NombreObjetoDate es el nombre del objeto Date ha ser creado; puede ser un nuevo Objeto o una propiedad de un objeto existente.

    Loa parámetros en la sintaxis precedente pueden ser cualesquiera de los siguientes:

    • Nada [Nothing]: crea la fecha de hoy día y la hora. Por ejemplo, hoydía = new Date().
    • Una cadena representando una fecha en la siguiente forma: "Mes día, año horas:minutos:segundos." Por ejemplo, Navidad95 = new Date("December 25, 1995 13:30:00"). Si se omite las horas, minutos, o segundos, el valor será configurado como cero.
    • Un conjunto de valores enteros para año, mes y día. Por ejemplo, Navidad95 = new Date(1995,11,25).
    • Un conjunto de valores enteros para año, mes, día, hora, minuto y segundos. Por ejemplo, Navidad95 = new Date(1995,11,25,9,30,0).

    JavaScript 1.2 y versiones anteriores
    El objeto Date object se comporta como sigue:

    • Fechas antes de 1970 no están permitidas.
    • JavaScript depende de las facilidades y comportamiento de una plataforma específica; el comportamiento del objeto Date varía de plataforma a plataforma.

    Métodos del Objeto Date

    Los métodos del objeto Date para la manipulación de fechas y tiempos caen en estas amplias categorías:

    • Métodos "set", para la configuración de valores de tiempos y fechas en objetos Date.
    • Métodos "get" para la obtención de valores de tiempos y fechas desde objetos Date.
    • Métodos "to" para retonar valores de cadena desde objetos Date.
    • Métodos UTC y de conversión, para convertir cadenas Date.

    Con los métodos "get" y "set" puede obtener y configurar segundos, minutos, horas, día del mes, día de la semana, meses y años separadamente. Existe un método getDay que retorna el día de la semana, pero no el método correspondiente setDay debido a que el día de la semana es configurado automáticamente. Estos métodos utilizan enteros para representar aquellos valores como sigue:

    • Segundos y minutos: 0 a 59
    • Horas: 0 a 23
    • Día: 0 (Domingo) a 6 (Sábado)
    • Fecha: 1 a 31 (día del mes)
    • Meses: 0 (Enero) a 11 (Deciembre)
    • Año: años desde 1900

    Por ejemplo, suponga que define la siguiente fecha:

    Navidad95 = new Date("December 25, 1995")
    

    Entonces Navidad95.getMonth() retorna 11 y Navidad95.getFullYear() retorna 1995.

    Los métodos getTime y setTime son utilizados para comparar fechas. El método getTime retorna el número de millisegundos desde Enero 1, 1970, 00:00:00 para un objeto Date.

    Por ejemplo, el código siguiente despliega el número de días transcurridos en el año actual:

    hoydía = new Date()
    FinAño = new Date(1995,11,31,23,59,59,999) // Configura el día y el mes
    FinAño.setFullYear(hoydía.getFullYear()) // Configura año para este año
    msPorDía = 24 * 60 * 60 * 1000 // Número de milisegundos por día
    diastranscurridos = (finAño.getTime() - hoydía.getTime()) / msPorDía
    diastranscurridos = Math.round(diastranscurridos) //retorna días transcurridos en el año
    

    Este ejemplo crea un objeto Date llamado hoydía que contiene la fecha del día de hoy. Crea un objeto Date llamado FinAño y configura el año con el año actual. Luego, utilizando el número de milisegundos por día, computa el número de días entre hoydía y FinAño, utilizando getTime y redondeando al número total de días.

    El método parse es útil para asignar valores desde cadenas de fechas a bjetos Date existentes. Por ejemplo, el código siguiente utiliza parse y setTime para asignar el valor de fecha al objeto IPOdate:

    IPOdate = new Date()
    IPOdate.setTime(Date.parse("Aug 9, 1995"))
    

    Utilizando el Objeto Date: un Ejemplo

    En el siguiente ejemplo, la función JSReloj() retorna el tiempo en un formato de un reloj digital.

    function JSReloj() {
       var tiempo = new Date()
       var hora = tiempo.getHours()
       var minutos = tiempo.getMinutes()
       var segundos = tiempo.getSeconds()
       var temp = "" + ((hora > 12) ? hora - 12 : hora)
       if (hora == 0)
          temp = "12";
       temp += ((minutos < 10) ? ":0" : ":") + minutos
       temp += ((segundos < 10) ? ":0" : ":") + segundos
       temp += (hora >= 12) ? " P.M." : " A.M."
       return temp
    }
    

    La función JSReloj primero crea un nuevo objeto Date llamado tiempo; puesto que no se han dado argumentos, tiempo es creado con la hora y fecha actuales. Luego invoca a los métodos getHours, getMinutes y getSeconds asignando el valor de la hora, minutos y segundos actuales a hora, minutos y segundos.

    Las cuatro siguientes sentencias construyen una cadena basada en el valor del tiempo. La primera sentencia crea una variable temp, asignándole el valor utilizando una expresión condicional; if hora es mayor que 12, (hora - 12), caso contrario simplemente la hora hour, a menos que la hora sea 0, en cuyo caso se convierte en 12.

    La siguiente sentencia añade el valor de minutos a temp. Si el valor de minutos es menor que 10, la expresión condicional añade una cadena con un cero por delante; caso contrario añade una cadena con dos puntos de demarcación. Luego una sentencia añade el valor de segundos a temp en la misma manera.

    Finalmente, una expresión condicional añade "PM" a temp si hora es 12 o mayor; caso contrario, añade "AM" a temp.

    Etiquetas y colaboradores del documento

    Contributors to this page: DSN XP, teoli, tiangolo, Mgjbot
    Última actualización por: teoli,