今日の日付と現在時刻を自動表示!「10月15日10:15 現在」をJavaScriptで実装する方法
Webサイトのヘッダーやお知らせ欄などで、
「10月15日10:15 現在」のように“今の時刻”を表示したいことはありませんか?
たとえば、
- ニュースサイトで「更新時刻」を自動反映したい
- ECサイトで「本日○○時点の在庫状況」と表示したい
- 天気・交通情報などで「現在のデータ更新時刻」を出したい
といった場面で役立ちます。
この記事では、JavaScriptを使って リアルタイムに日付+時刻を表示 するシンプルなスクリプトの書き方を、初心者にもわかりやすく解説します。
完成イメージ
完成すると、次のような表示になります👇
10月15日 10:15 現在
しかも、時間部分「10:15 現在」だけを赤色で強調。
日付は自動的に今日のものに変わり、時刻は1分ごとに更新されます。
HTMLとCSSの基本構造
まずはHTMLの土台を用意しましょう。
<div id="datetime"></div>
<style>
#datetime {
font-size: 18px;
}
#datetime .time {
color: red;
font-weight: bold;
}
</style>
ポイントは .time クラス。
ここに「赤文字+太字」のスタイルを指定して、
JavaScript側で時間部分だけをこのクラスで囲うようにします。
JavaScriptで現在の日付と時刻を生成
続いてスクリプト部分です。
<script>
function updateDateTime() {
const now = new Date(); // 現在日時を取得
const month = (now.getMonth() + 1).toString().padStart(2, '0');
const day = now.getDate().toString().padStart(2, '0');
const hours = now.getHours().toString().padStart(2, '0');
const minutes = now.getMinutes().toString().padStart(2, '0');
// HTMLに表示(時刻部分を赤色にする)
const dateTimeString = `${month}月${day}日 <span class="time">${hours}:${minutes} 現在</span>`;
document.getElementById('datetime').innerHTML = dateTimeString;
}
// 初回表示+1分ごとに更新
updateDateTime();
setInterval(updateDateTime, 60000);
</script>
コード解説
| 処理内容 | 説明 |
|---|---|
new Date() | 現在の日時を取得 |
getMonth() + 1 | JavaScriptの月は0始まりのため +1 |
padStart(2, '0') | 1桁の数字を「01」など2桁に整形 |
innerHTML | HTML要素内に文字列+タグを挿入 |
setInterval(updateDateTime, 60000) | 1分(60,000ミリ秒)ごとに更新 |
「現在」時刻だけを赤くする理由
たとえば、企業サイトや店舗情報ページなどでは、
「2025年10月15日10:15 現在」と表示されていると、
“いつの情報なのか”が直感的に伝わる という利点があります。
さらに、時間部分を赤く強調することで、
「情報が更新されている」「最新の時刻」だと視覚的に印象づけられます。
小さな工夫ですが、ユーザーの信頼感を高める重要なUI要素です。
秒単位で更新したい場合
リアルタイムの“時計風”にしたい場合は、
更新間隔を「1秒」に変更すればOKです。
setInterval(updateDateTime, 1000);
この場合は、表示も「10:15:36 現在」のように
秒を含めるように書き換えましょう
const seconds = now.getSeconds().toString().padStart(2, '0');
const dateTimeString = `${month}月${day}日 <span class="time">${hours}:${minutes}:${seconds} 現在</span>`;
英語表記にしたい場合
海外向けサイトや多言語対応ページでは、英語表記もよく使われます。
const options = { month: 'short', day: 'numeric', hour: '2-digit', minute: '2-digit' };
const dateTimeString = now.toLocaleString('en-US', options) + ' JST';
出力例
Oct 15, 10:15 JST
ローカルタイムに応じて自動変換もできるため、
多言語サイトでは toLocaleString() を使うのがおすすめです。
サイトデザインに合わせた応用アイデア
単なる表示だけでなく、サイトのトーンや目的に合わせてデザインアレンジもできます。
カスタマイズ例
#datetime {
font-size: 16px;
color: #333;
}
#datetime .time {
color: #e60000;
background: #fff5f5;
padding: 2px 6px;
border-radius: 4px;
}
背景に淡いピンクを敷くことで、やわらかい雰囲気の「現在時刻表示」に変身。
実際の活用シーン
| シーン | 表示例 | メリット |
|---|---|---|
| ニュースサイト | 10月15日10:15 現在 | 更新時刻を明確に |
| 天気・災害情報 | 10月15日10:15 現在 | 情報の鮮度を保証 |
| 店舗の混雑状況 | 10月15日10:15 現在 | 現在のリアル状況を伝える |
| 株価・為替ページ | 10月15日10:15 現在 | リアルタイム更新感を演出 |
こうした“時刻を添えるだけ”の工夫が、サイト全体の信頼性をぐっと高めてくれます。
よくあるエラーと対策
❌ Cannot read properties of null (reading 'innerHTML')
→ <div id="datetime"></div> がHTMLに存在しない場合に出るエラーです。
必ずスクリプトより上に配置しましょう。
❌ 時間がずれている
→ サーバーのタイムゾーンではなく、閲覧者の端末時刻が基準になります。
もし「日本時間固定」にしたい場合は、toLocaleString('ja-JP', { timeZone: 'Asia/Tokyo' }) を利用します。
まとめ
JavaScriptを使えば、わずか数行で「現在の日付と時刻」を動的に表示できます。
今回のポイント
new Date()で現在の日時を取得padStart()で桁揃えinnerHTMLでタグごと出力- CSSクラスで時刻を赤く強調
- 1分おきに更新することで“常に最新”を保つ
シンプルながら、ニュースサイト・企業ページ・在庫情報・店舗案内など、さまざまな場面で応用できます。
ちょっとしたUI改善でも「信頼されるサイト」に一歩近づくはずです。
おまけ:そのまま使える完全版コード
<div id="datetime"></div>
<style>
#datetime {
font-size: 18px;
}
#datetime .time {
color: red;
font-weight: bold;
}
</style>
<script>
function updateDateTime() {
const now = new Date();
const month = (now.getMonth() + 1).toString().padStart(2, '0');
const day = now.getDate().toString().padStart(2, '0');
const hours = now.getHours().toString().padStart(2, '0');
const minutes = now.getMinutes().toString().padStart(2, '0');
document.getElementById('datetime').innerHTML =
`${month}月${day}日 <span class="time">${hours}:${minutes} 現在</span>`;
}
updateDateTime();
setInterval(updateDateTime, 60000);
</script>
これで、あなたのWebサイトにも「最新時刻の信頼感」をプラス。
小さな工夫が、大きなプロフェッショナル感につながります。


SimpleBar.jsでスクロールバーを美しく!【実装レシピ&サンプル付き】
9月 25, 2025特定の固定ページから来たときだけポップアップを表示する方法【JavaScript】
9月 17, 2025【サンプルコード付き】日本語必須&ふりがな入力をチェックするフォームの作り方
9月 16, 2025