JavaScript日付フォーマット方法

JavaScript 日付フォーマット方法を紹介します。

方法 1

JavaScript での日付フォーマットは正規表現と Date 型のgetFullYeargetMonthgetDategetHoursgetMinutesgetSecondsメソッドで日付をフォーマットできます。

実装例

export const dateFormat = (date, fmt = "YYYY/mm/dd") => {
  let ret;
  const opt = {
    "Y+": date.getFullYear().toString(), // 年
    "m+": (date.getMonth() + 1).toString(), // 月
    "d+": date.getDate().toString(), // 日
    "H+": date.getHours().toString(), // 時
    "M+": date.getMinutes().toString(), // 分
    "S+": date.getSeconds().toString(), // 秒
  };
  for (let k in opt) {
    ret = new RegExp("(" + k + ")").exec(fmt);
    if (ret) {
      fmt = fmt.replace(
        ret[1],
        ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0")
      );
    }
  }
  return fmt;
};

方法 2

Intl.DateTimeFormatオブジェクトを使用することで、日付フォーマットことができます。

実装例

const date = new Date();
const dateFormat = new Intl.DateTimeFormat("ja-JP", {
  year: "numeric",
  month: "2-digit",
  day: "2-digit",
  hour: "2-digit",
  minute: "2-digit",
  second: "2-digit",
}).format(date);
console.log(dateFormat);

方法 3

toLocaleString()は JavaScript の Date オブジェクトに含まれるメソッドで、日付フォーマットことができます。

実装例

//標準的な使用方法は次のようになります。
//下記により、「yyyy/mm/dd hh:mm:ss」形式の日付文字列が出力されます。
const date = new Date();
console.log(date.toLocaleString());

//また、toLocaleString()には引オプションを渡すことができます。
//下記により、「yyyy年mm月dd日」形式で日付文字列が出力されます。
const date = new Date();
console.log(
  date.toLocaleString("ja-JP", {
    year: "numeric",
    month: "numeric",
    day: "numeric",
  })
);

方法 4

toLocaleDateString()は JavaScript の Date オブジェクトに含まれるメソッドで、日付フォーマットことができます。

実装例

//標準的な使用方法は次のようになります。
//下記により、「yyyy/mm/dd」形式の日付文字列が出力されます。
const date = new Date();
console.log(date.toLocaleDateString());

//また、toLocaleDateString()には、オプションを渡すことができます。
//下記により、「yyyy年m月dd日」形式で日付文字列が出力されます。
const date = new Date();
console.log(
  date.toLocaleDateString("ja-JP", {
    year: "numeric",
    month: "long",
    day: "numeric",
  })
);

方法 5

toLocaleTimeString()は JavaScript の Date オブジェクトに含まれるメソッドで、日付フォーマットことができます。

実装例

//標準的な使用方法は次のようになります。
//下記により、現在のローカルのフォーマットでの時刻文字列が出力されます。
const date = new Date();
console.log(date.toLocaleTimeString());

//また、toLocaleTimeString()には、オプションを渡すことができます。
//下記により、「hh時mm分ss秒」形式で時刻文字列が出力されます。
const date = new Date();
console.log(
  date.toLocaleTimeString("ja-JP", {
    hour: "numeric",
    minute: "numeric",
    second: "numeric",
  })
);