我有以下日期:
var datestr = "11/11/2012 10:55"
当我执行以下操作时:
var datems = new Date(datestr).getTime();
我得到的毫秒数似乎不是正确的毫秒数,因为它似乎在更远的时候提前了。如何将上述“datestr”转换为毫秒(相对于GMT)?
答案 0 :(得分:3)
如果字符串未指定时区,则Date
假设当地时间,一种可能性。
如果您的所有日期字符串都采用该格式,则可以在解析时为其添加时区:
var datems = new Date(datestr + " UTC").getTime();
或者您必须使用local offset来查找UTC:
var localDate = new Date(datestr);
var datems = localDate.getTime() - (localDate.getTimezoneOffset() * 60 * 1000);