- ベストアンサー
JavaScriptの時計の表示
- JavaScriptを使用してリアルタイムに時間を表示する方法について教えてください。
- 時間の表示を分と秒を常に2ケタにする方法について教えてください。
- 現在のコードを使用して現在の時間を表示する方法について詳しく教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1です。 >ちなみに教えていただいたコードで >「時」の値も2ケタにするには、 >どうしたらよいでしょうか? え~っと、どっちのことでしょうか? var punn=ima.getMinutes(); if (punn<10) punn = "0" + punn; の方なら、同様に var jii=jii2[ima.getHours()]; if (jii<10) jii = "0" + jii; 別の書き方のほうなら html += ima.getHours() + "時"; の部分を html += pad0(ima.getHours()) + "時"; (* pad0()が、2桁の数字を前ゼロにする関数になっています。)
その他の回答 (1)
- fujillin
- ベストアンサー率61% (1594/2576)
数字が10より小さかったら、"0"を前に付けてあげればよろしいかと。(2桁固定なので) 例えば var punn=ima.getMinutes(); if (punn<10) punn = "0" + punn; みたいに。 ご質問とは関係ありませんが・・・ getHours()は0~23を返すと思うけれど、わざわざ配列から読み直しているのはなぜでしょうか? 少し違う書き方をしてみると var tokei = (function(pad0){ return function(){ var ima = new Date(); var html = (ima.getMonth()+1) + "月"; html += ima.getDate() + "日("; html += ["日","月","火","水","木","金","土"][ima.getDay()] + ")"; html += ima.getHours() + "時"; html += pad0(ima.getMinutes()) + "分"; html += pad0(ima.getSeconds()) + "秒"; document.getElementById("genzai").innerHTML = html; } })(function(n){ n = "0" + n; return n.substring(n.length-2); }); setInterval("tokei()",500);
お礼
>わざわざ配列から読み直しているのはなぜでしょうか? 言い忘れておりましたが、 当方JavaScriptに関しては超初心者で、 あるHPのコードを参考にさせていただいただけなので 詳しいことはわかりません。 教えていただいた書き方で 思い通りになりました。 助かりました。 本当にありがとうございました。
補足
何度もすいません。 ちなみに教えていただいたコードで 「時」の値も2ケタにするには、 どうしたらよいでしょうか? 今1時台ですが、 1時ではなく01時としたいのです。 お手数をおかけしますが よろしくお願いします。