2012-07-19 11 views
5

Estoy tratando de entender algo sobre getTime(), Mi problema es que, Estoy fijando una nueva fecha con permite decir: 23,07,2012. Cuando estoy usando getTime() en él debo obtener los milisegundos Desde 01,01,1970. Cuando divido el valor que ir de getTime() con (1000 * 60 * 60 * 24) que se debe conseguir pasar el número de días transcurridos desde 01,01,1970 hasta 05,07,2012 pero por alguna razón obtener un número con un punto decimal (15.543,875) yo no entiendo por qué, me refiero desde 01,01,1970 y 23,07,2012 que debería obtener un número entero (que lo que creo), así que sé Estoy realmente equivocado, si alguien puede por favor ayudarme a entender por qué el punto decimal en el resultado.Javascript, getTime()

Respuesta

4

Si está estableciendo una fecha como new Date(2012, 06, 23) Se establecerá de acuerdo con la zona horaria del cliente, donde .getTime() es UTC. ¿Quieres Date.UTC:

Date.UTC(2012,6,23)/(1000*60*60*24) 
//15544 For any computer 

new Date(2012, 06, 23)/(1000*60*60*24) 
//15543.875 For my computer, I am coincidentally in the same timezone as Israel. This result will depend on what timezone the client is. 
+0

gracias esailija puede usted por favor cargar un código que resoult de mi zona horaria y la devide zona UTC con (1000 * 60 * 60 * 24) lástima pues el enlace no funciona y no puedo escribir la descifrar que no funciona, mabye, no te entendí bien, así que si puedes subir las gracias, por favor. –

+0

@uBlankText todo el código que necesita está en mi respuesta. Muéstrame tu código que no funciona aquí: http://jsfiddle.net/ – Esailija

+0

Gracias, voy a echar un vistazo. –

Cuestiones relacionadas