目标:找到local time并UTC time offset以下列格式构建URL.
示例URL:/ 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晚5个小时.
所以基于我的理解,我需要通过新的Date()找到我的本地时间,然后使用getTimezoneOffset()函数来计算差异,然后将它附加到字符串的末尾.
1.以格式获取当地时间
var local = new Date().format("yyyy-MM-ddThh:mm:ss"); //today (local time)
Run Code Online (Sandbox Code Playgroud)
产量
2013-07-02T09:00:00
Run Code Online (Sandbox Code Playgroud)
2.以小时为单位获取UTC时间偏移量
var offset = local.getTimezoneOffset() / 60;
Run Code Online (Sandbox Code Playgroud)
产量
7
Run Code Online (Sandbox Code Playgroud)
3.Construct URL(仅限时间部分)
var duration = local + "-" + offset + ":00";
Run Code Online (Sandbox Code Playgroud)
输出:
2013-07-02T09:00:00-7:00
Run Code Online (Sandbox Code Playgroud)
以上输出结果表示我的当地时间是2013/07/02 9am,与UTC的差异是7小时(UTC是比当地时间早7小时)
到目前为止它似乎工作,但如果getTimezoneOffset()返回负值如-120怎么办?
我想知道在这种情况下格式应该是什么样的,因为我无法从W3C文档中找到答案.提前致谢.