JavaScript の日付をフォーマットする

Harshit Jindal 2023年10月12日
  1. JavaScript で toTimeString() を使用して JavaScript データをフォーマットする
  2. JavaScript で toUTCString() を使用して JavaScript データをフォーマットする
  3. JavaScript で toDateString() を使用して JavaScript データをフォーマットする
  4. JavaScript で toLocaleString() を使用して JavaScript データをフォーマットする
  5. JavaScript で toLocaleTimeString() を使用して JavaScript データをフォーマットする
  6. JavaScript でカスタム関数を使用して日付をフォーマットする
  7. JavaScript で Moment.js パッケージと Node.js を使用して日付をフォーマットする
  8. Node.jsdateformat パッケージを使用する
JavaScript の日付をフォーマットする

このチュートリアルでは、JavaScript の日付をフォーマットする方法について説明します。

JavaScript の Date オブジェクトを使用して、現在の日付と時刻を取得できます。独自のカスタム関数を記述し、moment.js などのライブラリを使用して、日付をフォーマットできます。

まず、Date オブジェクトを使用して date という名前の変数を作成し、現在の日付と時刻を取得します。

var date = new Date();

この変数に適用されたすべてのフォーマット関数の結果を表示します。

JavaScript で toTimeString() を使用して JavaScript データをフォーマットする

toTimeString() は、date 変数から時間に関する情報を含む文字列だけを抽出するのに役立ちます。

var date = new Date();
result = date.toTimeString();
console.log(result);

出力:

"20:07:37 GMT+0100 (Central European Standard Time)"

JavaScript で toUTCString() を使用して JavaScript データをフォーマットする

このメソッドは、変数に格納されている現在の国の時刻からグリニッジ標準時または協定世界時を返します。

var date = new Date();
result = date.toUTCString();
console.log(result);

出力:

"Thu, 18 Mar 2021 19:09:40 GMT"

JavaScript で toDateString() を使用して JavaScript データをフォーマットする

このメソッドは日付を抽出し、文字列の形式で返します。

var date = new Date();
result = date.toDateString();
console.log(result);

出力:

"Thu Mar 18 2021"

JavaScript で toISOString() を使用して JavaScript データをフォーマットする

ISO8601 形式の日付/時刻を含む文字列を返します。

var date = new Date();
result = date.toISOString();
console.log(result);

出力:

"2021-03-18T19:11:35.957Z"

JavaScript で toLocaleString() を使用して JavaScript データをフォーマットする

ロケール設定を使用して、日付オブジェクトを文字列に変換します。

var date = new Date();
result = date.toLocaleString();
console.log(result);

出力:

"3/18/2021, 8:13:03 PM"

JavaScript で toLocaleTimeString() を使用して JavaScript データをフォーマットする

日付オブジェクトを変換しますが、ロケール設定を使用して時間のみを文字列に抽出します。

var date = new Date();
result = date.toLocaleTimeString();
console.log(result);

出力:

"8:14:22 PM"

JavaScript でカスタム関数を使用して日付をフォーマットする

日付形式 dd-mm-yyyy または dd-mm-yyyy および同様のパターン

メソッド getDate()getMonth()、および getFullYear() を使用して、日付の一部を分割し、必要な記号を使用して、必要な順序で連結します。

たとえば、以下に記述したようなカスタム関数を作成することで、dd/mm/yyyydd-mm-yyyymm-dd-yyyymm/yyyy を任意の方法で取得できます。

var date = new Date();
const formatDate = (date) => {
  let formatted_date =
      date.getDate() + '-' + (date.getMonth() + 1) + '-' + date.getFullYear()
  return formatted_date;
} console.log(formatDate(date));

出力:

"18-3-2021"

日付文字列内に、1 月2 月3 月などの月の名前を含めることもできます。

var date = new Date();
const months = [
  'JAN', 'FEB', 'MAR', 'APR', 'MAY', 'JUN', 'JUL', 'AUG', 'SEP', 'OCT', 'NOV',
  'DEC'
];

const formatDate = (date) => {
  let formatted_date =
      date.getDate() + '-' + months[date.getMonth()] + '-' + date.getFullYear()
  return formatted_date;
} console.log(formatDate(date));

出力:

"18-MAR-2021"

日付形式 yyyy-mm-dd hh:mm:ss および同様のパターン

すべてのメソッド getDate()getMonth() および getFullYear()getHour()getminutes()getsecond() を使用して、日付と時刻の一部を個別に取得します。必要な記号を使用して、必要な順序でそれらを連結します。

var date = new Date();

const formatDate =
    (current_datetime) => {
      let formatted_date = current_datetime.getFullYear() + '-' +
          (current_datetime.getMonth() + 1) + '-' + current_datetime.getDate() +
          ' ' + current_datetime.getHours() + ':' +
          current_datetime.getMinutes() + ':' + current_datetime.getSeconds();
      return formatted_date;
    }

                          console.log(formatDate(date));

出力:

"2021-3-18 20:21:2"

JavaScript で Moment.js パッケージと Node.js を使用して日付をフォーマットする

これは、JavaScript で最高の日付と時刻のライブラリと見なされています。使い方は簡単で、これらのさまざまな機能をすべて覚えて構築する必要はありません。ユーザーは、フォーマットのニーズに応じて文字列テンプレートを簡単に作成できます。

const moment = require('moment');
let m = moment();
m.format('[Time: ] h:mm:ss a');  // output of the form `Time: 11:39:03 pm`

上記のコードは、moment.js でノード REPL を使用して日付と時刻をフォーマットする方法の 1つを示しています。

Node.jsdateformat パッケージを使用する

Moment.js のような別のパッケージは、Date のフォーマットに役立ちます。Node.jsブラウザ側 JavaScript の両方で動作します。.format() メソッドを含めることにより、Date オブジェクトを拡張します。

ブラウザ側

Day = new Date();
Day.format('dd-m-yy');  // Returns '16-3-21'

上記のコードは、Date オブジェクトで dateformat パッケージを使用する簡単さを示しています。

Node.js

const dateformat = require('dateformat');
let now = new Date();
dateformat(now, 'dddd, mmmm dS, yyyy, h:MM:ss TT');  // returns 'Tuesday, March
                                                     // 16th, 2021, 11:32:08 PM'

上記のコードは、ノード REPL で日付をフォーマットするための dateformat パッケージの使用を示しています。

著者: Harshit Jindal
Harshit Jindal avatar Harshit Jindal avatar

Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.

LinkedIn

関連記事 - JavaScript Date