2012-11-28 25 views
10

Olası Çoğalt:
How to format a JSON date?
Parsing Date from webserviceJavaScript milisaniye gelen Tarih ve saat dilimi

bu soru zaten istendi eğer

üzgünüm. Etrafa baktım ama bir tane bulamadım. "json" tarihini yalnızca javascript ve jQuery (ek jQuery kütüphaneleri hariç) kullanarak insan dostu bir formata dönüştürmenin hızlı ve kolay bir yolu var mı? Bir * json tarih diye bir şey * var

creationDate: "/Date(1346713200000+0100)/" 

Teşekkür

+8

:

tarihtir biçimi şudur. Sadece ek olmayan basamaklı (+ ') karakterler dışındaki karakterleri çıkarmanız ve javascript'te bir tarih oluşturmanız gerekir. Yardım için şu soruya bakın: http://stackoverflow.com/questions/11024367/parsing-date-from-webservice – ahren

+0

Sadece şunu yapamazsınız: 'var d = yeni Tarih (1346713200000 + 0100);'? – SpYk3HH

+0

evet > var d = new Date (1346713200000 + 0100) > d Mon 3 Eylül 2012 19:00:00 GMT-0400 (Doğu Yaz Saati) – VoronoiPotato

cevap

6
> var maybeDateString = "/Date(1346713200000+0100)/"; 
> fromDateString(maybeDateString) 
Tue Sep 04 2012 02:00:00 GMT+0200 

function fromDateString(str) { 
    var res = str.match(/\/Date\((\d+)(?:([+-])(\d\d)(\d\d))?\)\//); 
    if (res == null) 
     return new Date(NaN); // or something that indicates it was not a DateString 
    var time = parseInt(res[1], 10); 
    if (res[2] && res[3] && res[4]) { 
     var dir = res[2] == "+" ? -1 : 1, 
      h = parseInt(res[3], 10), 
      m = parseInt(res[4], 10); 
     time += dir * (h*60+m) * 60000; 
    } 
    return new Date(time); 
} 
İlgili konular