我正在使用javascript处理日期,并遇到了一个奇怪的问题
function updateRow(element){
var data = element.name.match(/stamp\[(\d+)\]\[(\d+)\]/);
if(data[2] == 3){
var raw = element.value.match(/(\d+):(\d+):(\d+)/);
var time = 0;//((raw[1] * 3600) + (raw[2] * 60) + (raw[3] * 1)) * 1000;
//Hardcoded just to test
var test = new Date("2015-02-18 13:16:06");
var date = new Date(test.getTime());
document.getElementById(data[1]+"-2").value =
date.getFullYear()+"-"+
fillZero(date.getMonth(), 2)+"-"+
fillZero(date.getDay(), 2)+" "+
fillZero(date.getHours(), 2)+":"+
fillZero(date.getMinutes(),2)+":"+
fillZero(date.getSeconds(),2);
}
}
我得到的日期应该是2015-02-18 13:16:06,但是从一些奇怪的原因我得到2015-01-03 13:16:06,但我不明白为什么。
答案 0 :(得分:2)
使用date.getDate()代替date.getDay()并在getMonth中添加+1