2012-12-03 100 views
1

我正在從ActiveX組件的日期(在.NET開發的日期,格式是不知道放棄即像DateTime.Now.toString())。所以我得到日期2012年6月8日而不是2012年8月18日。。我怎樣才能得到8月18日,2012年時使用new Date()獲取客戶端的日期格式

下面是代碼:

signerDetails = signerLib.FetchCertDetails(); 
var certDetails = signerDetails.split('$$$$$$'); 
var cardDate = new Date(certDetails[1]) 
+1

您正在開發一個客戶端/服務器應用程序嗎? – Obama

+1

2012年6月8日發佈的'certDetails [1]'的價值是什麼? – RobG

+0

這些真的是有問題的日期嗎?我可以理解你如何得到8月6日,如果它寫成2012年8月6日,可以解釋爲月/日/年或日/月/年,但與8月8日出現似乎很奇怪,因爲它似乎任何日期字符串表示這將是明確的... – Chris

回答

1

我建議您更新您的ActiveX組件在RFC2822或ISO 8601格式返回日期,這樣你可以創建日期的一個新的實例,不需要任何形式的手動解析。在C#中很簡單,.NET有一個內置的format specifier例如

var iso8601Date = DateTime.UtcNow.ToString("o"); 

還有就是Date類這需要在日期串的過載,這在內部調用Date.parse,其期望在該特定格式的日期。

或者,您可以在epoch format中返回您的日期,但這需要一些額外的工作。