質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

3回答

938閲覧

<javascript>計算した数値を分秒に変換する方法(全くの初心者です)

hanaco

総合スコア3

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2021/11/02 02:29

前提・実現したいこと

全くの初心者です。
例えば、動画の時間などで分秒のある項目が複数あるとして、
チェックボックス で動画を選択して、
その動画の合計の試聴時間の合計値を計算し、
さらにそれを分秒にして表示させたいです。

発生している問題・エラーメッセージ

秒数の合計まではなんとかできたのですが、
その秒数の合計を分秒に変換する方法がうまくいかず困っています。

https://sterfield.co.jp/designer/jquery%E3%81%A7%E9%87%91%E9%A1%8D%E3%82%92%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88%E3%82%A2%E3%83%83%E3%83%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/
このサイトのコードを参照しました。

該当のソースコード

javascript

1 2 3<p class="List"> 4<label><input type="checkbox" value="1">動画A<span class="sec">200</span>秒)</label> 5<label><input type="checkbox" value="1">動画B<span class="sec">400</span>秒)</label> 6</p> 7 8<p>秒数:<span class="total">0</span></p> 9<div id="Result">0</div> 10 11 12<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> 13<script type="text/javascript"> 14$(function(){ 15var Length = num; 16 $(".List :checkbox").click(function(){ 17 Count0 = 0; 18 $(".List :checkbox:checked").each(function(){ 19 Count0 = Count0 + removeFigure($(this).parent("label").find(".sec").text()); 20 }); 21 22 var Second = setInterval(function(){ 23 if(Length != Count0){ 24 if(Length < Count0){ 25 Length = Length + Math.round((Count0 - Length)/2); 26 }else{ 27 Length = Length - Math.round((Length - Count0)/2); 28 } 29 30 $(".total").text(addFigure(Length)); 31 } 32 }, 20); 33 }); 34 35 function addFigure(str) { 36 var num = new String(str).replace(/,/g, ""); 37 return num; 38 } 39 40 function removeFigure(str) { 41 var num = new String(str).replace(/,/g, ""); 42 num = Number(num); 43 return num; 44 } 45 46}); 47 48 var num = ""; 49 var timeM = Math.floor(num % (24 * 60 * 60) % (60 * 60) / 60); 50 var timeS = num % (24 * 60 * 60) % (60 * 60) % 60; 51 var timeDMS = timeM + '分' + timeS + '秒'; 52 53var sampleArea = document.getElementById("Result"); 54sampleArea.innerHTML = timeMS; 55</script> 56 57</body> 58</html> 59 60

試したこと

秒数を出してからその秒数を分秒に変換できないか試しましたが
うまくいきませんでした。。。
全くの見当違いでしたら申し訳ありません。。。
どうぞよろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tkturbo

2021/11/02 02:35

> var num = ""; > var timeM = Math.floor(num % (24 * 60 * 60) ↑この時点でエラー出てませんか?
Lhankor_Mhy

2021/11/02 03:11 編集

var num = 400; とすると、 「6分40秒」 と表示されました。 ですので、問題なく計算できているように思います。 わからない部分は、タイトルと異なり、変換の方法ではないのでは?
hanaco

2021/11/02 03:44

ありがとうございます。そうでした、変換の方法でした汗
guest

回答3

0

秒数を出してからその秒数を分秒に変換できないか試しましたが

うまくいきませんでした。。。

まずは、算数の範囲で考えて数式を立ててみましょう。あとは、それをプログラムに書くだけです。

投稿2021/11/02 02:57

maisumakun

総合スコア146018

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

js

1 var Second = setInterval(function () { 2 if (Length != Count0) { 3 if (Length < Count0) { 4 Length = Length + Math.round((Count0 - Length) / 2); 5 } else { 6 Length = Length - Math.round((Length - Count0) / 2); 7 } 8 9 $(".total").text(addFigure(Length)); 10 11// ここに入れる。 12 var num = Length; // ちょっと変える。 13 var timeM = Math.floor(num % (24 * 60 * 60) % (60 * 60) / 60); 14 var timeS = num % (24 * 60 * 60) % (60 * 60) % 60; 15 var timeMS = timeM + '分' + timeS + '秒'; 16 17 var sampleArea = document.getElementById("Result"); 18 sampleArea.innerHTML = timeMS; 19// ここまで。 20 } 21 }, 20);

投稿2021/11/02 03:15

Lhankor_Mhy

総合スコア36960

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hanaco

2021/11/02 03:43

ありがとうございました。こんなど素人相手に書き換えていただいてありがとうございます。 無事表示できました。ありがとうございました;;
guest

0

通算の秒数が取得できたのなら、それを60で割ると分が出てきます
んで、60で割った余りが秒数ですね

投稿2021/11/02 02:36

y_waiwai

総合スコア88042

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問