JavaScriptで日付計算を実行しようとしていますが、これはExcelに一致しています。Excelとjavascriptの日付の計算が異なる
//Excel
=(EDATE(DATE(2000,6,1),60)-DATE(2012,1,20))
これは-2424
の結果を与えるので、私はこれは-2423
Iの結果を与え、次の
//Javascript - using datejs library
a = Date.parse('2000/06/01').addMonths(60);
b = Date.parse('2012/01/20');
a.setHours(12,0,0);
b.setHours(12,0,0);
span = new TimeSpan(a - b);
console.log(span.getDays());
とJavaScriptで同じ計算をしようなぜ私は1日を失っているのか分からない。 誰かがこれがどう起こっているのかを明らかにすることはできますか?
事前にお気軽にお問い合わせください。 :)
'EDATE()'と 'addMonths() 'によって計算されたものが、同じ日を参照しているかどうかを調べることができますか? –
Excelの結果は正しいです:2005-06-01から、2006-01-01に到達するには30 + 31 + 31 + 30 + 31 + 30 + 31、次に365 * 6 + 1(2008年のうるう年)を2012-01-01に、次に19日を2012-01-20に取得します。 –