1

JavaScriptの次の問題に対する最も簡潔な解決策を探しています。

JavaScriptの2つの日付の間に発生する日数を確認したいと思います。たとえば、Daysでの日付の違いは探していません。

日付1:2012年6月26日23:05

日付2:2012年6月27日午前0時15分

次のコード行を使用していました。

var days = Math.ceil((date2 - date1) / 86400000);

結果は1です。2にします(6月26日と6月27日を数えます)

4

2 に答える 2

3

日付の時間部分を削除してから、日付減算を行います。この jsfiddleまたは以下のスニペットを参照してください。

var d1 = new Date('June 26th 2012 11:05 PM'.replace('th',''));
var d2 = new Date('June 27th 2012 12:15 AM'.replace('th',''));

// remove the time portion, set the dates to midnight
d1.setHours(0,0,0,0);
d2.setHours(0,0,0,0);

var diff = Math.ceil((d2 - d1) / 86400000) + 1;

console.log(diff);

</p>

于 2012-06-26T20:23:18.820 に答える
1

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date

時間、分、秒、およびミリ秒をすべてゼロに設定します。これで、同じ時刻の 2 つの日付が作成されました。これで、これまでと同じようにその操作を実行して、正しい答えを得ることができます。

于 2012-06-26T19:58:44.473 に答える