2つの日付間の差分を計算する
ネットを漁ると、秒数だけの差分や日数だけの差分が良くヒットするが
今回は、日数・時間・分・秒でそれぞれの差分が必要な場面に遭遇したので内容をメモ
javascriptで実装した
もっとスマートに書けないものか
// 現在時刻 var now = Date.now(); // この記事を書き始めた時刻 var targetDate = Date.parse('2017/03/27 23:46:00'); // 2つの日付の差分(ミリ秒) var timeSpan = targetDate - now; // 符号 var sign = Math.sign(timeSpan); // 差分の絶対値 timeSpan = Math.abs(timeSpan); // 何日何時間何分何秒離れているか計算 var day = Math.floor(timeSpan / (1000 * 60 * 60 * 24)); var hour = Math.floor(timeSpan / (1000 * 60 * 60)) - day * 24; var minute = Math.floor(timeSpan / (1000 * 60)) - (day * 24 + hour) * 60; var second = Math.floor(timeSpan / 1000) - ((day * 24 + hour) * 60 + minute) * 60;