2017-06-09 1 views
0

私は時、分、秒に秒を変換する次の関数を持っています。問題は出力の第2セクションが01:10:2045357897001:10:20のように、セクションごとに2桁に調整したいと思います。時間変換関数で最初の2桁の秒数を取得する方法

function getReadableTime(value) { 
 
    hours = Math.floor(value/3600); 
 
    value %= 3600; 
 
    minutes = Math.floor(value/60); 
 
    seconds = value % 60; 
 
    return hours + ":" +minutes+ ":" +seconds; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

それを修正するためにどのように任意のアイデア?

+3

また、どのような価値が生じるのでしょうか? – epascarello

+1

'seconds.toString()。slice(0,2)' – adeneo

+2

これとjQueryの関係は何ですか? *その出力を生成するスニペットを提供できますか? – trincot

答えて

1

関数が60以上の秒数を返すことはできません。私は実際にあなたが2桁以上を得ることができる数時間を話していると思います。

は、(例えば、代わりに1970年以降の)午前0時からの時間数を取得し、あなたの関数の開始時に1以上のステートメントを追加するには:

function getReadableTime(value) { 
 
    // truncate value, and only count since midnight 
 
    value = Math.floor(value) % (3600*24); 
 
    var hours = Math.floor(value/3600); 
 
    value %= 3600; 
 
    var minutes = Math.floor(value/60); 
 
    var seconds = value % 60; 
 
    // prefix single digits with a zero 
 
    return (hours + ":" + minutes + ":" + seconds).replace(/\b\d\b/g, '0$&'); 
 
} 
 

 
var elapsed = getReadableTime(1497031554); 
 
console.log(elapsed);

NB:常に作りますvar(またはlet,const)でローカルに新しく導入された変数。

関連する問題