我在周一晚上撕毁了我的声音!有谁能帮我理解下面的问题?
我的浏览器01-09-2014
上有以下字符串(这是本地时间),我想将其转换为UTC,以便我可以将其保存回服务器。
这就是我在做的事情:
var localDate = moment("01-09-2014", "DD-MM-YYYY");
var utcDate = localDate.utc();
console.log("Local Date " + localDate.toDate() + " UTC Date " + utcDate.toDate());
奇怪的是,最后一行输出:
Local Date Mon Sep 01 2014 00:00:00 GMT+0200 (Romance Daylight Time) UTC Date Mon Sep 01 2014 00:00:00 GMT+0200 (Romance Daylight Time)
问题
你能帮我解决这两个问题吗?
答案 0 :(得分:3)
我不确定...但我认为应该是:
var utcDate = localDate.utc().format()
请参阅:
http://momentjs.com/docs/#/parsing/utc/
<强>已更新强>
小提琴:
http://jsfiddle.net/qhk9tnLr/2/
JS:
console.log("Local Date: " + moment("01-09-2014", "DD-MM-YYYY").toDate());
console.log("UTC Date: " + moment("01-09-2014", "DD-MM-YYYY").utc().format("ddd MMM DD YYYY HH:mm:ss zZZ"));
输出:
Local Date: Mon Sep 01 2014 00:00:00 GMT+0200
UTC Date: Sun Aug 31 2014 22:00:00 UTC+0000
结论:
toDate()
会给当地时间 - 使用UTC utc().format()