2012-09-13 23 views
5

¿cómo puedo formatear una fecha de javascript como el formato ISO, pero en hora local?formato de fecha de Javascript como ISO pero local

con myDate.toISOString() estoy consiguiendo el tiempo que: "2012-09-13T19: 12: 23.826Z"

pero aquí, es 22:13, así que ¿cómo puedo incluir la zona horaria en el formato anterior?


que terminé haciendo ...

pad=function(e,t,n){n=n||"0",t=t||2;while((""+e).length<t)e=n+e;return e} 
c = new Date() 
c.getFullYear()+"-"+pad(c.getMonth()+1)+"-"+pad(c.getDate()-5)+"T"+c.toLocaleTimeString().replace(/\D/g,':')+"."+pad(c.getMilliseconds(),3) 

Respuesta

3

yo sepa no se puede formatear fechas en javascript (sin usar bibliotecas externas). Lo mejor que puedes hacer es "formatearlo tú mismo". Quiero decir:

var date = new Date(); 
var year = date.getFullYear(); 
var month = date...... 


var ISOdate = year + "-" + month + "-" + .... ; 

¡Pero hay algunas buenas bibliotecas que te permitirán dar formato a las fechas! (Léase "formato", como en library.getDate("YYYY-MM-DD.........");)

EDIT:

Moment.js parece lo que está buscando: http://momentjs.com/

+0

y el mes devuelto por '.getMonth()' Si no acolchado, así que supongo que también necesitaría una biblioteca para rellenarla. ¡Parece un faff! –

+0

Sí, de hecho. Es mucho trabajo, es por eso que recomendaría usar Moment.js o alguna otra biblioteca. – alexandernst

Cuestiones relacionadas