2013-03-06 165 views
-3

有沒有一種方法,我可以得到年,月(0基)和一天'03/05/2013'解析JavaScript中的日期?

如果是這樣,怎麼樣?

感謝

有沒有一種安全的方式來做到這一點,可以檢查它是否是正確的格式?

+3

相關:http://xkcd.com/1179/ – BLSully 2013-03-06 19:20:40

+1

'Date'構造函數可能不喜歡你的格式,但是正則表達式總是可用的;你有什麼嘗試? – 2013-03-06 19:20:55

+4

對不起,但是http://bit.ly/15y49gj – sweetamylase 2013-03-06 19:21:52

回答

0

您有Date.parse方法分析日期字符串並返回其時間戳,因此您可以撥打new Date()

事情是這樣的:

new Date(Date.parse('03/06/2013')) 
+0

我如何知道它是否失敗? – user2043533 2013-03-06 19:25:28

+0

你也可以做'新日期('03/06/2013')'...但上面的點仍然是....是3月6日還是6月3日? – BLSully 2013-03-06 19:25:33

+0

3月6日。以同樣的方式使用'。' (而不是',')在調用parseFloat時。 – 2013-03-06 19:31:04

0

使用split()功能最容易,我想:

var date = "03/05/2013"; 
var dateParts = date.split("/"); 

var day = dateParts[0]; 
var month = dateParts[1]; 
var year = dateParts[2]; 

http://jsfiddle.net/s7ma2/1/

+0

關閉,但如果我的理解正確,則必須交換「日」和「月」(月/日/年)。這是一個奇怪的格式,我知道。 – 2013-03-06 19:30:25

+0

如何檢測故障? – user2043533 2013-03-06 19:34:37

+0

那麼,你可以檢查數組dateParts的長度:dateParts.length()應該返回3 – jeppeb 2013-03-06 19:38:48