我在jquery中創建了一個導出爲正則表達式的日曆。但是,我在日期時間有一些問題。正式導出的格式化時間
ical導出腳本需要以下格式的日期/時間:19970714T170000Z。
有人知道這是什麼以及我應該如何準備我的字符串?
感謝
我在jquery中創建了一個導出爲正則表達式的日曆。但是,我在日期時間有一些問題。正式導出的格式化時間
ical導出腳本需要以下格式的日期/時間:19970714T170000Z。
有人知道這是什麼以及我應該如何準備我的字符串?
感謝
閱讀RFC(link) 給出:
3.3.5。日期時間
[...]
日期 - 時間=日期 「T」 時間
的 「日期 - 時間」 值類型表明了三種形式的時間值:
FORM# 1: 19980118T230000
FORM#2:與UTC的時間 CAPITAL字母Z後綴字符DATE,到TIM LOCAL TIME 例如,以下表示1998年1月18日,下午11點DATE e值。
例如,以下表示1998年1月19日,在0700 UTC: 19980119T070000ZFORM#3:使用本地時間和時區參考日期 TZID =美國/紐約:19980119T020000
DTSTART:19970714T133000 ;當地時間 DTSTART:19970714T173000Z; UTC time DTSTART; TZID = America/New_York:19970714T133000 ;當地時間和地點 ;區域參考
因此,要回答在JQuery中轉換爲此格式的問題,您可以執行以下操作。
var n = d.toISOString();
這幾乎就像toISOString
function formatDateTime(date) {
const year = date.getUTCFullYear();
const month = pad(date.getUTCMonth() + 1);
const day = pad(date.getUTCDate());
const hour = pad(date.getUTCHours());
const minute = pad(date.getUTCMinutes());
const second = pad(date.getUTCSeconds());
return `${year}${month}${day}T${hour}${minute}${second}Z`;
}
function pad(i) {
return i < 10 ? `0${i}` : `${i}`;
}
// Example:
const date = new Date('2017-05-31T11:46:54.216Z');
date.toISOString() // '2017-05-31T11:46:54.216Z'
date.toJSON() // '2017-05-31T11:46:54.216Z'
formatDateTime(date) // '20170531T114654Z'