¿Cómo convierto 07/26/2010
a una marca de tiempo UNIX usando Javascript?
javascript
javascript-framework
Asim Zaidi
fuente
fuente
new Date("2010-7-26")
no analizará en Internet Explorer. El constructor de fecha se basa en el método Date.parse () cuando se pasa una cadena, que depende de la implementación en la 3ª edición de ECMA-262 y, como resultado, es notoriamente inflexible en IE.volverá una larga época
fuente
Eche un vistazo a http://www.w3schools.com/jsref/jsref_obj_date.asp
Hay una función
UTC()
que devuelve los milisegundos de la época de Unix.fuente
También puede utilizar la función Date.now ().
fuente
Algunas respuestas no explican los efectos secundarios de las variaciones en la zona horaria del objeto Fecha de JavaScript. Por lo tanto, debe considerar esta respuesta si esto le preocupa.
Método 1: depende de la zona horaria de la máquina
De forma predeterminada, JavaScript devuelve una fecha teniendo en cuenta la zona horaria de la máquina, por lo que el
getTime()
resultado varía de una computadora a otra. Puede comprobar este comportamiento ejecutando:Esto no es un problema si realmente quieres el tiempo desde Epoch considerando tu zona horaria. Entonces, si desea obtener el tiempo desde Epoch para la Fecha actual o incluso una Fecha específica basada en la zona horaria de la computadora , puede continuar usando este método.
Método 2: independiente de la zona horaria de la máquina
Sin embargo, si desea obtener un viaje de variaciones en la zona horaria y obtener el tiempo desde Epoch para una fecha específica en UTC (es decir, independiente de la zona horaria), debe usar el
Date.UTC
método o cambiar la fecha de su zona horaria a UTC:Entonces, usando este método (o, alternativamente, restando la diferencia), el resultado debería ser:
En mi opinión, a menos que sepa lo que está haciendo (consulte la nota anterior), debería preferir el método 2 , ya que es independiente de la máquina.
Nota final
Aunque las recomendaciones en esta respuesta, y dado
Date.UTC
que no funcionan sin una fecha / hora especificada, es posible que desee utilizar el enfoque alternativo y hacer algo como esto:Esto no tiene ningún sentido y probablemente sea INCORRECTO (está modificando la fecha). Tenga cuidado de no hacer esto. Si desea obtener el tiempo desde Epoch a partir de la fecha Y HORA actuales , lo más probable es que esté bien usando el Método 1 .
fuente
Date.parse()
El método analiza una representación de cadena de una fecha y devuelve el número de milisegundos desdeJanuary 1, 1970, 00:00:00 UTC
.Explore más en: Date.parse ()
fuente
Funciona de la misma manera que las cosas anteriores. Si necesitas segundos, no olvides
/ 1000
fuente