JavaScript Dates

❮ 前章へ 次章へ ❯

Date オブジェクトは、日付(年、月、日、時、分、秒、ミリ秒)を操作します。


JavaScript 日付フォーマット

JavaScript の日付は文字列として書くことができます:

または、数字でも書くことができます:

数字で書く日付は、1970年1月1日 00:00:00からのミリ秒数を指定します。


日付の表示

このチュートリアルでは、id="demo" の <p> 要素内に日付を表​​示するためのスクリプトを使用します:

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = Date();
</script>
Try it Yourself »

上のスクリプトでは、id="demo" の要素のコンテンツ(innerHTML)に Date() の値を代入しています。

このページの下で、より読みやすい形式で日付を表示する方法を学習します。


Date オブジェクトの作成

Date オブジェクトを使用すると、日付を操作することができます。

日付は、年、月、日、時、分、秒、ミリ秒で構成されます。

Date オブジェクトは、new Date() コンストラクタで作成します。

日付の操作開始には、次の 4 つの方法ways があります:

new Date()
new Date(milliseconds)
new Date(dateString)
new Date(year, month, day, hours, minutes, seconds, milliseconds)

new Date() は、現在の日付と時刻の新しい日付オブジェクトを作成します:

<script>
var d = new Date();
document.getElementById("demo").innerHTML = d;
</script>
Try it Yourself »

new Date(date string) は、指定された日付と時刻から新しい日付オブジェクトを作成します:

<script>
var d = new Date("October 13, 2014 11:13:00");
document.getElementById("demo").innerHTML = d;
</script>
Try it Yourself »

有効な日付文字列(date フォーマット)については、次の章で説明します。

new Date(number) は、ゼロ + 数値として新しい日付オブジェクトを作成します:

ゼロ時は、1970年1月1日00:00:00 UTCです。数値はミリ秒単位で指定します:

<script>
var d = new Date(86400000);
document.getElementById("demo").innerHTML = d;
</script>
Try it Yourself »

JJavaScript の日付は、1970年1月1日00:00:00 世界標準時(UTC)からミリ秒単位で計算されます。1日は、86,400,000ミリ秒です。

new Date(7 つの数値) は、指定した日付と時刻の新しい日付オブジェクトを作成します:

7つの数字は、年、月、日、時、分、秒、ミリ秒の順で指定します:

<script>
var d = new Date(99, 5, 24, 11, 33, 30, 0);
document.getElementById("demo").innerHTML = d;
</script>
Try it Yourself »

上の例の変形として、最後の4つのパラメータの全てを省略することができます:

<script>
var d = new Date(99, 5, 24);
document.getElementById("demo").innerHTML = d;
</script>
Try it Yourself »

JavaScript は、月を 0 ~ 11 で数えます。1月は 0 で、12月は 11 となります。


Date メソッド

Date オブジェクトを作成すると、多数のメソッドを使用してオブジェクトを操作できるようになります。

Date メソッドを使用すると、ローカル時または UTC(世界時または GMT)時のいずれかを使用して、 オブジェクトの年、月、日、時、分、秒、ミリ秒の取得や設定ができるようになります。

Date メソッドについては、次の章で説明します。


日付の表示

HTML で日付オブジェクトを表示すると、toString() メソッドを使用して自動的に文字列に変換されます。

<p id="demo"></p>

<script>
d = new Date();
document.getElementById("demo").innerHTML = d;
</script>

Is the same as:

<p id="demo"></p>

<script>
d = new Date();
document.getElementById("demo").innerHTML = d.toString();
</script>
Try it Yourself »

toUTCString() メソッドは、日付を UTC 文字列(日付表示標準)に変換します。

<script>
var d = new Date();
document.getElementById("demo").innerHTML = d.toUTCString();
</script>
Try it Yourself »

toDateString() メソッドは、日付をより読みやすい形式に変換します:

<script>
var d = new Date();
document.getElementById("demo").innerHTML = d.toDateString();
</script>
Try it Yourself »

Date オブジェクトは static です。コンピュータの時間は刻々と変化していますが、作成された日付オブジェクトはそうではありません。


言い換えれば、、

タイムゾーン

タイムゾーンを指定せずに日付を設定すると、JavaScript はブラウザのタイムゾーンを使用します。

タイムゾーンを指定せずに日付を取得すると、結果はブラウザのタイムゾーンに変換されます。

言い換えると、GMT(グリニッジ標準時)で日付/時刻が作成されている場合でも、 ユーザが米国中部でブラウズすると、日付/時刻は CDT(Central US Daylight Time)に変換されるということです。

タイムゾーンについては、次の章で詳しく説明します。


練習問題による自己診断

Exercise 1 »   Exercise 2 »   Exercise 3 »


❮ 前章へ 次章へ ❯