2017-07-29 38 views
0

我從Apache日誌中獲取此時間戳"18/May/2011:12:40:18 -0700",我想將其轉換爲Date類型。我想從時間戳中提取月份的日期,月份,年份和時間。Apache日誌時間戳到日期打字稿

當我嘗試從前面顯示的數據中創建一個新日期時,我收到來自TS編譯器的Invalid data錯誤消息。我認爲-0700是問題所在,所以我請求解決方案。

+1

我認爲[這jsbin(https://jsbin.com/sasanuzuya/edit?js,控制檯)示例顯示您遇到的問題。 JavaScript無法將該格式解析爲日期。 (-0700與UTC的差異)。您可能需要自己解析日期或使用庫 – 0mpurdy

+1

儘管我期望這是一個運行時錯誤,而不是TS編譯器錯誤... – 0mpurdy

+0

你是對的,他適合我。非常感謝! –

回答

1

下面的代碼顯示了您遇到的問題。 JavaScript無法將該格式解析爲日期。 (-0700與UTC的差異)。

var dates = []; 
 

 
dates.push(new Date("18/May/2011:12:40:18 -0700")); 
 
dates.push(new Date("18/May/2011:12:40:18-0700")); 
 
dates.push(new Date("2011-05-18:12:40:18-0700")); 
 

 
dates.forEach(parsedDate => console.log(parsedDate.toString()))

你可能會需要自己解析日期或使用圖書館