JavaScript で時間形式を 24 時間に変更する 質問する

JavaScript で時間形式を 24 時間に変更する 質問する

時間の形式は 12/16/2011 3:49:37 PM のようなもので、この形式は次のように取得しました:

var newDate = new Date(timeFromat);
timeFormat = newDate.toLocaleString();

実際の形式は GMT でしたが、上記のコードを使用してそれを Bowers 時間に変換しました。

これを 24 時間形式に変更したいので、この日付を次のように変更します: 12/16/2011 15:49:37 これを JavaScript で実行します。

それが私がやったことだ

var firstPartOftimeFormat = timeFormat.substring(0,9);
var secondPartOftimeFormat = timeFormat.substring(10,20);

ただし、日付形式が 3/16/2011 のような場合には機能しません。ただし、次の部分は機能します。

var time = $("#starttime").val();
var hours = Number(secondPartOftimeFormat.match(/^(\d+)/)[1]);
var minutes = Number(secondPartOftimeFormat.match(/:(\d+)/)[1]);
var AMPM = secondPartOftimeFormat.match(/\s(.*)$/)[1];
if(AMPM == "PM" && hours<12) hours = hours+12;
if(AMPM == "AM" && hours==12) hours = hours-12;
var sHours = hours.toString();
var sMinutes = minutes.toString();
if(hours<10) sHours = "0" + sHours;
if(minutes<10) sMinutes = "0" + sMinutes;
alert(sHours + ":" + sMinutes);

他のアプローチを提案してもらえますか?

ありがとう

ベストアンサー1

使用dateObj.toLocaleString([locales[, options]])

オプション1- ロケールの使用

var date = new Date();
console.log(date.toLocaleString('en-GB'));

オプション2- オプションの使用

var options = { hour12: false };
console.log(date.toLocaleString('en-US', options));

おすすめ記事