[英]JavaScript calculate difference in seconds between to datetime
我是 JavaScript 的新手並且已經做了一些研究,但是我找不到相對簡單的問題的直接解決方案。 我有以下變量:
var recordDate = '2016-04-20 17:52:33';
我需要以秒為單位獲得 now 和recordDate
之間的差異。 實現它的最有效方法是什么?
首先嘗試將 recordDate 轉換為 Date 對象
var match = recordDate.match(/^(\d+)-(\d+)-(\d+) (\d+)\:(\d+)\:(\d+)$/);
var date = new Date(match[1], match[2] - 1, match[3], match[4], match[5], match[6]);
var currentDate = new Date();
var differenceInSeconds = Math.abs(date.getTime() - currentDate.getTime())/1000;
演示
var recordDate = '2016-04-20 17:52:33'; var match = recordDate.match(/^(\\d+)-(\\d+)-(\\d+) (\\d+)\\:(\\d+)\\:(\\d+)$/); var date = new Date(match[1], match[2] - 1, match[3], match[4], match[5], match[6]); alert(date.toString()); var currentDate = new Date(); var differenceInSeconds = Math.abs(date.getTime() - currentDate.getTime())/1000; alert(differenceInSeconds);
像這樣設置日期記錄:
var recordDate = new Date('2016-04-20 17:52:33');
var currentTime = new Date();
然后像這樣計算:
(currentTime - recordDate) / 1000 = {Seconds in between}
補充評論:
為什么我不使用abs
額外解釋是因為它看起來像它在 stackoverflow 中的位置顯示的目的 - edited 5 seconds ago
或類似的,當currentTime
永遠不會小於記錄日期時,因此一個計算和依賴更少.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.