javascript 日期对象不 return 正确的日期

javascript date object do not return correct date

我正在使用 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,但我不知道为什么。

使用 date.getDate() 而不是 date.getDay() 并在 getMonth

中添加 +1