Tengo un problema con el objeto Date de Javascript.
Contexto: Necesito iniciar un objeto Date con un String para obtener la hora del servidor. Estoy trabajando con PHP, lo que hago pues es algo similar a:
Código PHP:
Ver original
<script> </script>
Esto lo que genera es:
Código Javascript:
Ver original
var today = new Date("2014-02-09T21:45:34+01:00");
El problema está en que le objeto el día es 0, mes, año, hora, minutos y segundos funcionan correctamente.
Sin embargo, como trabajo en local, cambio la hora de mi pc a 16 de Enero del 2014 por ejemplo, y ahora el objeto Date tiene el día 5
Obviamente lo que quiero es que salga el día que toca. He probado varios formatos distintos de fecha para el constructor, en concreto los que salen en los ejemplo de aquí y otros que me he inventado y siempre es el mismo el resultado.
Soy consciente de que podría pasarle los parámetros año, mes, día, etc. de uno en uno, pero es mucho más incómodo desde PHP. Pero soy un cabezón y quiero saber porqué pasa lo que pasa.
¿Qué estoy haciendo mal?
SOLUCIÓN
Mira que he estado una hora buscando la solución antes de postear esto, la solución es bien simple:
Con día me refería a lo que devuelve el método getDay(), y me ha dado por mirar en w3schools y he descubierto que me devuelve el día si, pero el ¡día de la semana! facepalm, pues nada lo único que hay que usar es el método getDate() para obtener el día del mes (se han lucido con los nombres de los métodos -.-).
http://www.w3schools.com/jsref/jsref_obj_date.asp
Perdón las molestias.
Espero que le sirva a alguien.