JavaScript で日付を UTC に変換する

このチュートリアルでは、JavaScript の toISOString() 関数を使用して日付を UTC 形式に変換する方法について説明します。

JavaScript の toISOString() 関数を使用して日付を UTC 形式に変換する

まず、JavaScript で日付オブジェクトを作成する方法について説明しましょう。このオブジェクトタイプを作成するには、Date()関数を使用します。この関数は、現在の日付、時刻、GMT オフセット、およびタイムゾーンを返します。

たとえば、日付オブジェクトを作成し、Date()関数を使用して現在の日付を確認しましょう。以下のコードを参照してください。

var myDate = new Date();
console.log(myDate);

出力:

Sun Jun 20 2021 10:13:09 GMT+0500 (Pakistan Standard Time)

出力では、完全な日付、時刻、オフセット、およびタイムゾーンが返されていることがわかります。日付オブジェクトから要素を 1つだけ抽出する場合は、get プロパティを使用できます。たとえば、getUTCDate()プロパティを使用して、上記の日付オブジェクトから月を抽出してみましょう。以下のコードを参照してください。

var myDate = new Date();
var month = myDate.getUTCMonth();
console.log(month);

出力:

5

出力からわかるように、5は現在の月が 6月であることを意味します。

getFullYear()getDate()getHours()getSeconds()など、目的のパーツを取得するために使用できる他のプロパティがあります。希望の日付で日付オブジェクトを作成する場合は、Date()関数で希望の日付を渡す必要があります。

たとえば、Date()関数で目的の日付を使用して日付オブジェクトを作成しましょう。以下のコードを参照してください。

var myDate = new Date(1990,05,10);
console.log(myDate);

出力:

Sun Jun 10 1990 00:00:00 GMT+0500 (Pakistan Standard Time)

出力では、時間はゼロですが、Date()関数に渡すことで時間を設定することもできます。Date()関数で日付を渡すための多くの形式があります。いくつかを以下に示します。

var myDate = new Date(year, month, day, hours, minutes, seconds, milliseconds);
var myDate = new Date('YYYY-MM-DD');
var myDate = new Date('MM/DD/YYYY');

たとえば、3番目の形式を使用して時間オブジェクトを作成しましょう。以下のコードを参照してください。

var myDate = new Date('10/5/1990');
console.log(myDate);

出力:

Fri Oct 05 1990 00:00:00 GMT+0500 (Pakistan Standard Time)

次に、toISOString()関数を使用して現在の日付を UTC に変換しましょう。以下のコードを参照してください。

var myDate = new Date().toISOString();
console.log(myDate);

出力:

2021-06-20T06:09:09.043Z

出力では、日付が UTC 形式であることがわかります。日付によって出力が変わる場合がありますのでご注意ください。

関連記事 - JavaScript Date

  • JavaScript で日付形式を変更する
  • JavaScript でタイムゾーンを取得する