1. ホーム
  2. javascript

[解決済み] JavaScript の秒から hh:mm:ss 形式の時間文字列への変換

2022-03-15 07:13:03

質問

秒単位の時間をコロンで区切られた時間文字列(hh:mm:ss)に変換したい。

私はここでいくつかの有用な答えを見つけたが、それらはすべてx時間x分フォーマットへの変換について述べている。

そこで、jQueryまたは生のJavaScriptでこれを行う小さなスニペットがありますか?

解決方法は?

String.prototype.toHHMMSS = function () {
    var sec_num = parseInt(this, 10); // don't forget the second param
    var hours   = Math.floor(sec_num / 3600);
    var minutes = Math.floor((sec_num - (hours * 3600)) / 60);
    var seconds = sec_num - (hours * 3600) - (minutes * 60);

    if (hours   < 10) {hours   = "0"+hours;}
    if (minutes < 10) {minutes = "0"+minutes;}
    if (seconds < 10) {seconds = "0"+seconds;}
    return hours+':'+minutes+':'+seconds;
}

のように使えるようになりました。

alert("5678".toHHMMSS());

作業用スニペットです。

String.prototype.toHHMMSS = function () {
    var sec_num = parseInt(this, 10); // don't forget the second param
    var hours   = Math.floor(sec_num / 3600);
    var minutes = Math.floor((sec_num - (hours * 3600)) / 60);
    var seconds = sec_num - (hours * 3600) - (minutes * 60);

    if (hours   < 10) {hours   = "0"+hours;}
    if (minutes < 10) {minutes = "0"+minutes;}
    if (seconds < 10) {seconds = "0"+seconds;}
    return hours + ':' + minutes + ':' + seconds;
}
    
console.log("5678".toHHMMSS());