2014-01-20 61 views
1

我有一個表頭中有一個日期字符串。它作爲數組的一部分返回,但我需要該數組中的日期爲Date Object而不僅僅是一個字符串。將字符串轉換爲數組中的日期對象

我的表如下

DEMO

// [[20th Jan, 33], [21st Jan, 44], [22nd Jan, 5],[23rd Jan, 17]]

我用下面的JS得到這個數組

var arr = $.map($('#bookedTable th:not(:first)'), function(el,i) { 
    return [[$(el).text(), $('#bookedTable td:eq('+i+')').text()]] 
}); 

console.log(arr) 

問:我怎樣才能返回字符串日期作爲我的數組中的日期對象?

+1

今年哪一年? 1933年是33歲? 2033? 8331? –

+0

對於複雜的日期解析,我建議你看看moment.js。但我認爲你問得太快了,你是否搜索「javascript日期解析」? –

+0

默認情況下它可以是今年的2014 – Redwall

回答

2

你需要運行像在陣列:)

function parseThisDate(date) { 
    dateParts = date.split(" "); 

    return new Date(dateParts[2], translateMonthToNum(dateParts[1]), dateParts[0]) 
} 

function translateMonthToNum(monthName) { 
    if (monthName == 'Jan,') return 0; 
    //todo: add all months you need 
} 
+1

''Jan''應該返回0,因爲月份是基於零的。 – EoiFirst

+0

@EoiFirst -yep,你說得對。感謝您的評論 – pomaxa

0

您可以將字符串總是轉換爲日期

VAR指明MyDate =新的日期所有日期此功能(「2013/1/16" );

如果月數是數字,你可以清楚地得到數組中的「2013/1/16」。

click here欲瞭解更多JavaScript日期對象信息。

相關問題