我用JavaScript创建了一个新的Date,时间正确,但在使用toISOString()
进行转换后,它已经落后了一个小时。为什么会这样?JavaScript转换后的时间比一小时后延迟
https://jsfiddle.net/73nfyxeL/
var createdDateTime = new Date('2015-04-01 11:53:00');
var isoCreatedDateTime = "";
alert(createdDateTime);
isoCreatedDateTime = createdDateTime.toISOString().match(/(\d{4}\-\d{2}\-\d{2})T(\d{2}:\d{2}:\d{2})/);
alert(isoCreatedDateTime[1] + ' ' + isoCreatedDateTime[2]);
createdDateTime.setMinutes(createdDateTime.getMinutes() + 1);
据我所知这应该不会更改本地时间(如夏令时),因为我给它一个预先设定的时间,而不是一个时区。这是怎么回事?
'var createdDateTime = new Date('2015-04-01 11:53:00');'给出无效日期:) – mohamedrias 2015-04-01 11:06:37
它应该是'var createdDateTime = new Date('2015-04-01T11:53: 00');' – mohamedrias 2015-04-01 11:07:24
@mohamedrias工作。我想添加T将它设置为UTC? – 2015-04-01 11:13:53