问题描述
我有此代码进行转换:
var date = new Date(1900, 0, 0, 0, 0, 0);
date.setDate(date.getDate() + row.values[1]);
var heure = row.values[5].toString().split(':');
date.setHours(heure[0]);
date.setMinutes(heure[1]);
console.log(date.toString());
其中row.values 包含Excel格式的日期。 此函数返回下一个初始日期的日期,为什么?
编辑日期对象不像benchmark年那样对1900年进行基准测试
var date = new Date(1900, 0, 0, 0, 0, 0); date.setDate(date.getDate() + 59);
给我:1900年2月28日,星期三
var date = new Date(1900, 0, 0, 0, 0, 0); date.setDate(date.getDate() + 60);
给我:1900年3月1日
也许是JavaScript错误?
在Microsoft Excel 2007中进行编辑 29/02/1900是有效日期,而不是1900不是a年
有关更多详细信息,请参见
1楼
如果年份可以被4除而不是100整除,则将是a年。如果年份可以被4和100整除,则它不是a年,除非也可以被400整除。:p