2017-02-26 81 views
-3

我有2個時間戳區別使用JavaScript 2個時間戳之間不使用moment.js

var startTimestamp = 1488021704531; 
var endTimestamp = 1488022516572; 

我需要時間,這些時間戳和使用JavaScript分鐘之間,但沒有使用moment.js的差異。 意味着輸出應該在幾小時和幾分鐘之內,例如:(02h 13min)。

+0

首先將其轉換爲日期對象的東西,新的日期(1488022516572)等之後寫你的邏輯 –

+1

這是基本完成數學。 StackOverflow不是代碼編寫服務或教程服務。請解釋您實現目標所遇到的問題,並顯示您的代碼無法按預期工作 – charlietfl

+0

@prince - 請提供一些更詳細的背景信息或深入瞭解您現在使用的解決方案的信息。也就是說,我瞭解第二部分「小時/分鐘/秒」的需求/問題。 –

回答

0

是否提供了一些更多的上下文信息或深入的解決方案信息。也就是說,我瞭解第二部分「小時/分鐘/秒」的需求/問題;下面是一些背景,或在milliseconds to time in javascript上閱讀。

話雖這麼說,

你可以只可嘗試減去,在結束 - 開始..如下面的代碼示例。

var startTimestamp = 1488021704531; 
 
    var endTimestamp = 1488022516572; 
 
    document.write(endTimestamp - startTimestamp + '<br/>');

這將輸出812041 - 它們是毫秒。

如果要將這些毫秒轉換爲已知格式hh:mm:ss.ms,則可以通過示例嘗試以下代碼 - also on jsfiddle

var startTimestamp = 1488021704531; 
 
    var endTimestamp = 1488022516572; 
 
    document.write(endTimestamp - startTimestamp + '<br/>'); 
 
    document.write(millisecondsToHoursMinutesSeconds(endTimestamp - startTimestamp)); 
 
    
 
    document.write('<hr/>'); 
 
    
 
    function millisecondsToHoursMinutesSeconds(ms) { 
 
     var milliseconds = parseInt((ms%1000)/100) 
 
      , seconds = parseInt((ms/1000)%60) 
 
      , minutes = parseInt((ms/(1000*60))%60) 
 
      , hours = parseInt((ms/(1000*60*60))%24); 
 
    
 
     hours = (hours < 10) ? "0" + hours : hours; 
 
     minutes = (minutes < 10) ? "0" + minutes : minutes; 
 
     seconds = (seconds < 10) ? "0" + seconds : seconds; 
 
    
 
     return hours + ":" + minutes + ":" + seconds + "." + milliseconds; 
 
    }

或者讀取這個問題的其他解決方案:milliseconds to time in javascript

+1

爲downvoting,它不會傷害提及**爲什麼**。幫助用戶是這個網站的主要原因,當然你可以告訴@prince提供一些更清晰的信息,他嘗試了什麼以及他的代碼目前在做什麼等等 - 但是你可以慢慢嘗試並幫助其他人鏈接和指針,而不是讓他們陷入寒冷。如果我的回答不正確,請編輯它或發佈**另一個**答案。我對此沒有任何問題,沉默寡言只是不「增值」。 –

+1

增加了+1。我的觀點中的答案是它應該如何。希望它會取消多達5個降價。 –