2011-08-25 243 views

回答

4

有一種簡單的方法來一個約會對象轉換爲GMT時間

是:

var d = new Date(); 
d.toGMTString() 

而且在ISO 8601顯示格式?

功能採取form here(它們也有一個ISO 8601解析器那裏)

function ISODateString(d) { 
    function pad(n) { return n<10 ? '0'+n : n } 
    return  d.getUTCFullYear() 
    + '-' + pad(d.getUTCMonth()+1) 
    + '-' + pad(d.getUTCDate()) 
    + 'T' + pad(d.getUTCHours()) 
    + ':' + pad(d.getUTCMinutes()) 
    + ':' + pad(d.getUTCSeconds()) 
    + 'Z' 
} 
+0

感謝您的回覆。 – Upperstage

+0

[Date.prototype.toGMTString()已棄用](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toGMTString)! – orad

0

這裏是MDN date.toISOString()頁面其中還包括跨瀏覽器兼容性代碼。這兩種方式創建一個日期實例的ISO 8601字符串:

MDN Page on date.toISOString()

2

我遇到的最好的解決辦法是使用Moment.js JavaScript庫,並使用下面的代碼:

獲取當前的ISO時間與時區信息和毫秒

now = moment().format("YYYY-MM-DDTHH:mm:ss.SSSZZ") 
// "2013-03-08T20:11:11.234+0100" 

now = moment().utc().format("YYYY-MM-DDTHH:mm:ss") + "Z" 
// "2013-03-08T19:11:11Z" <- better use the native .toISOString() 

要獲取ISO時間具有時區信息但沒有毫秒的本機JavaScript日期對象

var current_time = Date.now(); 
moment(current_time).format("YYYY-MM-DDTHH:mm:ssZZ")