2017-05-07 3 views
0

負の秒をhh:mm:ss形式に変換するソリューションを探しています。 -60を-00:01:00として表示したいとします。 これは私が負の秒をhh:mm:ssに変換する方法javacript

var res = d.toString().split("-"); 
var currentValue = res[1]; 
var currentDuration = "-" + getDuration(currentValue); 

function getDuration(d) { 
var h = Math.floor(d/3600); 
var m = Math.floor(d % 3600/60); 
h = h < 10 ? '0' + h : h; 
m = m < 10 ? '0' + m : m; 
return h + ':' + m; 

}

をやっていること、それを行うには良い方法はありますか?

+0

絶対値/正の値を変換して、その前にマイナス記号を付けることはできますか? – hughes

+0

実際に私はサーバーから負の値を得ています。私はマイナス記号を変換して追加することなく、マイナス記号を取り除かずに変換する方法を見つけようとしています。 –

+0

これまでに何を試みましたか? –

答えて

0

入力が負の秒の整数であると仮定すると、この関数は機能するはずです。

function nSecToTime(s) 
{ 
    s = Math.abs(s); 
    var t = [0,0,0]; 
    var r = s % 3600; 
    t[0] = Math.floor(s/3600); 
    t[1] = Math.floor(r/60); 
    r = r % 60; 
    t[2] = r; 
    return "-"+t[0]+":"+(t[1]<10?"0"+t[1]:t[1])+":"+(t[2]<10?"0"+t[2]:t[2]); // Format result in hh:mm:ss 
} 

nSecToTime(-58); // returns -0:00:58 
nSecToTime(-8452); // returns -2:20:52 
+0

58秒は00:01:09とどのように等しくなりますか? –

+0

私の悪い笑、それはタイプミスでした。 – Anakin

関連する問題