2013-01-17 53 views
0

我有這個功能刪除「(東部標準時間)」從JavaScript日期

//--format ISO8601 date into sections 
function formatDate(date){ 
    var a = date.split(/[T]/); 
    var d = a[0].split("-"); // date 
    var t = a[1].split(":"); // time 
    t[2] = t[2].split("-"); // Remove Time zone offset 
    var formattedDate = new Date(d[0],(d[1]-1),d[2],t[0],t[1],t[2][0]); 
    //formattedDate.replace(/ *\([^()]*\) */g, ""); 
    return formattedDate; 
} 

返回,看起來日期這樣

星期二2013年1月15日11時07分14秒GMT- 0500(東部標準時間)

我想刪除(東部標準時間)部分。我試着做formattedDate.replace,但它不會工作,因爲我相信它不是一個字符串。

有什麼建議嗎?

編輯:

我期望的輸出是

星期二2013年1月15日11時07分14秒格林尼治標準時間0500

+0

可能我建議http://momentjs.com/庫?非常小,非常有效。不是你的問題的直接答案,所以我只是提交它作爲評論。 –

+0

你想要的輸出是什麼? – Shmiddty

+0

您可以使用toString()或「」+ formatredDate將此日期更改爲字符串,但正確的方法是自己設置格式。 –

回答

1

返回什麼是Date實例。當你輸出它時(通過記錄等),它被轉換成一個字符串。所以你想要的是.toString(),然後使用字符串函數:

var str = formattedDate.toString(); 

// this should be safe since nothing else in the date string contains a opening paren 
var index = str.indexOf(" ("); 

// if the index exists 
if(~index) { 
    str = str.substr(0, index); 
} 
+0

這很好,謝謝。 – envinyater

相關問題