2017-08-08 82 views
0

如何獲取有時間的日期的持續時間。在javascript中獲取從時間的日期時間?

例如 開始日期和時間:2017年7月27日10時31分 結束日期和時間:2017年7月28日15時11

(開始日期和時間) - (結束日期和時間) =總數。

得到差異後應該轉換爲時間。

+0

你首先需要解析字符串到日期,所以[*爲什麼Date.parse給出不正確的結果*](https://stackoverflow.com/questions/2587345/why-does-date-parse-give-incorrect - 結果)可能適用。然後簡單地從另一個減去一個日期以毫秒爲單位獲得差異並將其轉換爲適合的任何單位(天,小時,分鐘,秒等) – RobG

回答

0

你必須使用:

const total = a.getTime() - b.getTime() 
+0

也許如果OP具有可以工作的Date對象。 – RobG

+0

如果他有字符串,他可以用這個字符串使用新的日期對象,然後做我的解決方案,你怎麼想? – ZAhmed

+0

不是一個好主意。使用內置解析器解析字符串不可靠,'new Date(「2017-07-27 10:31」)'在Safari中返回無效日期。 – RobG

0

您可以通過採取起始時間從結束時間

var startDate = new Date("2017-07-27 10:31"); 
var endDate = new Date("2017-07-28 15:11"); 

var durationSeconds = (endDate - startDate)/1000; 

從你制定出分鐘,秒爲此,小時等。

+0

請不要建議使用內置解析器解析字符串,請參閱[*爲什麼Date.parse會給出錯誤的結果?*](https://stackoverflow.com/questions/2587345/why-does-date-parse-give -incorrect-結果)。 – RobG