1. ホーム
  2. javascript

Javascriptで24時間表示から12時間表示への変換(AM/PM付き)。

2023-11-01 15:30:30

質問

以下のJSONの戻り値を24時間形式から12時間形式(AM & PM)に変換する最良の方法は何でしょうか?日付は同じままであるべきで、時間は書式設定が必要な唯一のものです。

February 04, 2011 19:00:00

追伸:もしそれが少しでも簡単になるなら、jQueryを使用しています。また、Date.jsを使用せず、シンプルな関数/コードを希望します。

どのように解決するのですか?

アップデイト2。 secondsオプションなし

UPDATEです。 AM after noonを修正、テストしました。 http://jsfiddle.net/aorcsik/xbtjE/

そのためにこんな関数を作りました。

function formatDate(date) {
  var d = new Date(date);
  var hh = d.getHours();
  var m = d.getMinutes();
  var s = d.getSeconds();
  var dd = "AM";
  var h = hh;
  if (h >= 12) {
    h = hh - 12;
    dd = "PM";
  }
  if (h == 0) {
    h = 12;
  }
  m = m < 10 ? "0" + m : m;

  s = s < 10 ? "0" + s : s;

  /* if you want 2 digit hours:
  h = h<10?"0"+h:h; */

  var pattern = new RegExp("0?" + hh + ":" + m + ":" + s);

  var replacement = h + ":" + m;
  /* if you want to add seconds
  replacement += ":"+s;  */
  replacement += " " + dd;

  return date.replace(pattern, replacement);
}

alert(formatDate("February 04, 2011 12:00:00"));