2012-12-21 6 views
15

Am lavorare con JSON API che rappresenta date come questoConvertire unix timestamp a JavaScript Object data

"date" : "/Date(1356081900000)/" 

voglio trasformare questo in regolare javascript Data.

L'unico modo in cui posso pensare di risolvere questo problema è di fare una sostituzione su tutto lasciando il timestamp che poi posso "convertire".

Questo funziona ma sembra solo sbagliato.

La mia domanda. Posso farlo in modo migliore?

UPDATE

unix_timestamp = jsonDate.replace('/Date(', '').replace(')/', ''); 

newDate = new Date(+unix_timestamp + 1000*3600); 
+1

Hai visto questo altro post? [Convertire un timestamp Unix in time in Javascript] (http://stackoverflow.com/questions/847185/convert-a-unix-timestamp-to-time-in-javascript) –

risposta

8

provare qualcosa di simile: -

var d = new Date(unix_timestamp*1000); 

o

var d = new Date([UNIX Timestamp] * 1000); 
+1

questo funziona per me, dieci un semplice 'ritorno t.toLocaleDateString() + '' + t.toLocaleTimeString(); 'nella mia funzione – elporfirio

0

Il costruttore Date accetta un timestamp Unix.

function cleanDate(d) { 
    return new Date(+d.replace(/\/Date\((\d+)\)\//, '$1')); 
} 

cleanDate("/Date(1356081900000)/"); // => Fri Dec 21 2012 04:25:00 GMT-0500 (EST)