javascript 中的 DateTime new Date(params) 快了 1 个月
DateTime new Date(params) in javascript is faster by 1 month
这很奇怪,但似乎 new Date(params) 以年、月、日、小时、分钟、秒、毫秒的正确格式传递时,它提前了 1 个月。
看看下面的实现:
// The format below needs to be changed according to req.param('dateTime')
// dateTime format is as follows: "dd/MM/yyyy HH:mm:ss"
var dateTime = report['dateTime'];
console.log('dateTime: '+dateTime);
var dateTimeSplit = dateTime.split(' ');
var dateSplit = dateTimeSplit[0].split('/');
var timeSplit = dateTimeSplit[1].split(':');
var day = parseInt(dateSplit[0]);
var month = parseInt(dateSplit[1]);
var year = parseInt(dateSplit[2]);
var hour = parseInt(timeSplit[0]);
var minute = parseInt(timeSplit[1]);
var second = parseInt(timeSplit[2]);
var createdAt = new Date(year, month, day, hour, minute, second, 0);
console.log('createdAt: '+createdAt);
日志的结果是:
Feb 09 04:13:46 sails-wusrs app/web.1: createdAt: Mon Mar 09 2015 12:02:24 GMT+0000 (UTC)
Feb 09 04:13:46 sails-wusrs app/web.1: dateTime: 09/02/2015 12:02:24
这个服务器在heroku上是运行,奇怪的是createdAt的日志在dateTime的前面。其他一切都很好,除了一个月。 02 二月对吗?我很混乱。感谢您的帮助!
javascript 日期时间中的月份从 0 开始。
这很奇怪,但似乎 new Date(params) 以年、月、日、小时、分钟、秒、毫秒的正确格式传递时,它提前了 1 个月。
看看下面的实现:
// The format below needs to be changed according to req.param('dateTime')
// dateTime format is as follows: "dd/MM/yyyy HH:mm:ss"
var dateTime = report['dateTime'];
console.log('dateTime: '+dateTime);
var dateTimeSplit = dateTime.split(' ');
var dateSplit = dateTimeSplit[0].split('/');
var timeSplit = dateTimeSplit[1].split(':');
var day = parseInt(dateSplit[0]);
var month = parseInt(dateSplit[1]);
var year = parseInt(dateSplit[2]);
var hour = parseInt(timeSplit[0]);
var minute = parseInt(timeSplit[1]);
var second = parseInt(timeSplit[2]);
var createdAt = new Date(year, month, day, hour, minute, second, 0);
console.log('createdAt: '+createdAt);
日志的结果是:
Feb 09 04:13:46 sails-wusrs app/web.1: createdAt: Mon Mar 09 2015 12:02:24 GMT+0000 (UTC)
Feb 09 04:13:46 sails-wusrs app/web.1: dateTime: 09/02/2015 12:02:24
这个服务器在heroku上是运行,奇怪的是createdAt的日志在dateTime的前面。其他一切都很好,除了一个月。 02 二月对吗?我很混乱。感谢您的帮助!
javascript 日期时间中的月份从 0 开始。