ISO 8601 在 JavaScript 中格式化带有时区偏移的日期
目标: 构造一个带有 ISO 时间戳的 URL包含时区的 8601 格式offset.
方法:
实现:
以下 JavaScript 函数构造 ISO 8601 时间戳:
function toIsoString(date) { var tzo = -date.getTimezoneOffset(), // Negative offset means UTC is ahead of local time dif = tzo >= 0 ? '+' : '-', pad = function(num) { return (num < 10 ? '0' : '') + num; }; return date.getFullYear() + '-' + pad(date.getMonth() + 1) + '-' + pad(date.getDate()) + 'T' + pad(date.getHours()) + ':' + pad(date.getMinutes()) + ':' + pad(date.getSeconds()) + dif + pad(Math.floor(Math.abs(tzo) / 60)) + ':' + pad(Math.abs(tzo) % 60); }
例如,如果当地时间是2013/07/02 上午 9 点,时区偏移量为 -7 小时(UTC 比 UTC 早 7 小时):
var dt = new Date(); console.log(toIsoString(dt)); // Outputs: "2013-07-02T09:00:00-07:00"
请注意,或 - 符号表示本地时间是早于还是晚于 UTC。
以上是如何在 JavaScript 中生成带有时区偏移的 ISO 8601 时间戳?的详细内容。更多信息请关注PHP中文网其他相关文章!