Javascript-日期差异不正确

Javascript-日期差异不正确,javascript,Javascript,我需要得到两个日期和时间之间的秒差 我有这个剧本: var date1 = new Date(2013,10,02,12,00,00); var date2 = new Date(2013,10,02,12,01,00); var diff = date2 - date1; diff = diff / 1000; document.write(diff); 返回60,60秒差的值,很好 然而,当我用30天跨越一个月时,它的计算并不正确 var date1 = new Date(2013,9,

我需要得到两个日期和时间之间的秒差

我有这个剧本:

var date1 = new Date(2013,10,02,12,00,00);
var date2 = new Date(2013,10,02,12,01,00);

var diff = date2 - date1;
diff = diff / 1000;
document.write(diff);
返回60,60秒差的值,很好

然而,当我用30天跨越一个月时,它的计算并不正确

var date1 = new Date(2013,9,30,12,00,00);
var date2 = new Date(2013,10,02,12,00,00);

var diff = date2 - date1;
diff = diff / 1000;
document.write(diff);

返回的结果是259200,即3天。9月30日和10月2日之间的差异只有2天,172800天,因为一个月只有30天。为什么Javascript认为9月份有31天?

月份数字以0开始,而不是1。所以9是10月,10是11月。

月份数字以0开始,而不是1。因此,9号是10月,10号是11月。

如果可以使用库,你应该使用moment.js。它对这些类型的东西非常有用:如果可以使用库,你应该使用moment.js。它对这些类型的东西非常有用: