目标:找到local time
,UTC time offset
然后以以下格式构建网址。
示例网址:/ Actions / Sleep?duration = 2002-10-10T12:00:00−05:00
该格式基于W3C建议:http : //www.w3.org/TR/xmlschema11-2/#dateTime
该文档说:
例如,2002-10-10T12:00:00-05:00(2002年10月10日中午,美国中部夏令时以及美国东部标准时间)等于2002-10-10T17:00:00Z,比2002-10-10T12:00:00Z晚五个小时。
因此,根据我的理解,我需要通过新的Date()查找我的本地时间,然后使用getTimezoneOffset()函数计算时差,然后将其附加到字符串的末尾。
1.获取本地时间格式
var local = new Date().format("yyyy-MM-ddThh:mm:ss"); //today (local time)
输出
2013-07-02T09:00:00
2.获取UTC时间偏移小时
var offset = local.getTimezoneOffset() / 60;
输出
7
3.构造URL(仅限时间部分)
var duration = local + "-" + offset + ":00";
输出:
2013-07-02T09:00:00-7:00
上面的输出表示我的本地时间是2013/07/02 9am,与UTC的时差是7小时(UTC比本地时间早7小时)
到目前为止,它似乎仍然有效,但是如果getTimezoneOffset()返回负值(如-120)怎么办?
我想知道这种情况下的格式应该如何,因为我无法从W3C文档中弄清楚。提前致谢。