web-dev-qa-db-ja.com

TypeScriptで日時をフォーマットする

REST AP​​Iから以下の形式で日付と時刻を受け取っています

2016-01-17T:08:44:29+0100

この日付とタイムスタンプを次のようにフォーマットしたい

17-01-2016 08:44:29

Dd/mm/yyyy hh:mm:ssである必要があります

TypeScriptでこれをフォーマットする方法は?

19
Protagonist

moment.jsを使用できます。あなたのプロジェクトにモーメントjsをインストールする

 moment("2016-01-17T:08:44:29+0100").format('MM/DD/YYYY');

より多くのフォーマットオプションチェックについては Moment.format()

7
Amit kumar

この回答 をご覧ください

new Date("2016-01-17T08:44:29+0100") //removed a colonオブジェクトを作成し、Dateオブジェクトからそれらを抽出して月、日、年、時間、分、秒を取得し、文字列を作成できます。スニペットをご覧ください:

var date = new Date("2016-01-17T08:44:29+0100"); // had to remove the colon (:) after the T in order to make it work
var day = date.getDate();
var monthIndex = date.getMonth();
var year = date.getFullYear();
var minutes = date.getMinutes();
var hours = date.getHours();
var seconds = date.getSeconds();
var myFormattedDate = day+"-"+(monthIndex+1)+"-"+year+" "+ hours+":"+minutes+":"+seconds;
document.getElementById("dateExample").innerHTML = myFormattedDate
<p id="dateExample"></p>

これは最もエレガントな方法ではありませんが、機能します。

7
John

これが役立つかどうかを確認してください。

var reTime = /(\d+\-\d+\-\d+)\D\:(\d+\:\d+\:\d+).+/;
var originalTime = '2016-01-17T:08:44:29+0100';
var newTime = originalTime.replace(this.reTime, '$1 $2');
console.log('newTime:', newTime);

出力:

newTime: 2016-01-17 08:44:29
1
Angel T