2016-08-30 60 views
0

目前,我正在使用JavaScript Rest API對SharePoint進行其餘的調用。我得到一個修改日期,其格式如下"2016-08-27T17:40:09Z",從我一直在閱讀這是許多開發人員有問題的問題。以另一種格式格式化Date.parse(dateString)中的日期

所以我決定繼續使用Date.parse(dateString)方法來轉換奇怪的日期格式,現在我得到了Sat Aug 27 2016 13:40:09 GMT-0400 (Eastern Daylight Time)

現在這是可以理解的東西,但我不尋找這個,我正在尋找以下格式Month\Date\Year Hour:Minute。我一直在閱讀文檔,但我還沒有發現任何東西。

+1

使用[moment.js(http://momentjs.com/) –

+0

這個問題似乎問相當規則:https://stackoverflow.com/questions/8362952/javascript日期輸出格式化 https://stackoverflow.com/questions/3066586/get-string-in-yyyymmdd-format-from-js-date-object –

+0

使用反斜線日期分隔符是不常見的,更常見的是正斜槓:m/d/y。 – RobG

回答

1

var d = new Date('2016-08-27T17:40:09Z'), 
 
    dFormatted = [d.getMonth() + 1, d.getDate(), d.getFullYear()].join('\\') + ' ' + [d.getHours(), d.getMinutes()].join(':'); 
 

 
console.log(dFormatted);

+0

你是對的,所以你的答案被糾正,但我用另一種方法去了。 – EasyE

0

如果你的格式是非常獨特的,那麼你需要使自己的格式化程序:

function toMyFormat(time) { 
 
    var d = new Date(time); 
 
    return d.getMonth() + '\\' + d.getDate() + '\\' + d.getFullYear() + ' ' + d.getHours() + ':' + d.getMinutes(); 
 
} 
 
console.log(toMyFormat('2016-08-27T17:40:09Z'));

您可能不過是幸運地找到一個適合你的localeString format

var d = new Date('2016-08-27T17:40:09Z'); 
 

 
console.log(d.toLocaleString('en-US')); 
 
console.log(d.toLocaleString('da-DK')); 
 
console.log(d.toLocaleString('de-GE'));

+0

非常感謝你我很幸運,非常感激。 – EasyE

+1

@EasyE'd.getMonth()'返回月份(從0-11),所以這個答案是錯誤的。檢查我的解決方案 –

+2

* toLocaleString *是依賴於實現的,因此將在不同的瀏覽器中返回不同的結果「en-US」不是「語言環境」,它是一種語言)。以上內容取決於對ECMA-402國際化API的支持,所有正在使用的瀏覽器都不支持。 – RobG

相關問題