假设我在控制台中输入以下代码:
var TheDate = new Date(2012, 10, 5);
TheDate.toUTCString();
"Sun, 04 Nov 2012 23:00:00 GMT" (I'm +1 hour ahead of GMT)
结果是日期实际上设置为本地时间。如何创建设置为 UTC 的日期?如果我这样做,TheDate.toUTCString()
我希望它说 2012 年 11 月 5 日 00:00:00 GMT。
谢谢。
假设我在控制台中输入以下代码:
var TheDate = new Date(2012, 10, 5);
TheDate.toUTCString();
"Sun, 04 Nov 2012 23:00:00 GMT" (I'm +1 hour ahead of GMT)
结果是日期实际上设置为本地时间。如何创建设置为 UTC 的日期?如果我这样做,TheDate.toUTCString()
我希望它说 2012 年 11 月 5 日 00:00:00 GMT。
谢谢。
使用Date.UTC()
方法:
var TheDate = new Date( Date.UTC(2012, 10, 5) );
console.log( TheDate.toUTCString() );
返回
Mon, 05 Nov 2012 00:00:00 GMT
日期.UTC
接受与构造函数的最长形式相同的参数,并返回 Date 对象中自 1970 年 1 月 1 日 00:00:00(通用时间)以来的毫秒数。
我找到了它的简写,您还可以以ISO 格式创建日期,new Date('YYYY-MM-DD')
以便将日期创建为UTC:
var DateA = new Date( '2012-11-05' );
console.log( DateA.toUTCString() );
// note the difference between input methods
var DateB = new Date( Date.UTC(2012, 10, 5) );
console.log( DateB.toUTCString() );
我建议你使用 momentjs (
momentjs.com
),那么您所要做的就是:
var theDate = new Date(2012, 10, 5),
utcDate = moment.utc(theDate);