タイムスタンプとして/Date(1370001284000+0200)/
のようなものがあります。私はそれがUNIXの日付だと思いますよね?これを次のような日付に変換するにはどうすればよいですか:31.05.2013 13:54:44
[〜#〜] this [〜#〜] 1370001284のコンバーターを試してみましたが、正しい日付が表示されます。数秒です。
しかし、私はまだ間違った日付を取得します:
var substring = unix_timestamp.replace("/Date(", "");
substring = substring.replace("000+0200)/", "");
var date = new Date();
date.setSeconds(substring);
return date;
t.format
の私の使用は Moment.js を使用することに由来することに注意してください。これはJavaScriptの標準Date
プロトタイプの一部ではありません。
Unixタイムスタンプは、1970-01-01 UTC:00:00 UTCからの秒数です。
+0200
の存在は、タイムゾーン調整情報が含まれているため、数値文字列がUnixタイムスタンプではないことを意味します。それを個別に処理する必要があります。
タイムスタンプ文字列がミリ秒単位の場合、ミリ秒コンストラクターと Moment.js を使用して、日付を文字列にフォーマットできます。
var t = new Date( 1370001284000 );
var formatted = t.format("dd.mm.yyyy hh:MM:ss");
タイムスタンプ文字列が秒単位の場合、setSeconds
を使用します。
var t = new Date();
t.setSeconds( 1370001284 );
var formatted = t.format("dd.mm.yyyy hh:MM:ss");
タイムゾーンを保持できるように、ISO形式が必要なようです。
var dateTime = new Date(1370001284000);
dateTime.toISOString(); // Returns "2013-05-31T11:54:44.000Z"
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString
Moment.jsなし:
var time_to_show = 1509968436; // unix timestamp in seconds
var t = new Date(time_to_show * 1000);
var formatted = ('0' + t.getHours()).slice(-2) + ':' + ('0' + t.getMinutes()).slice(-2);
document.write(formatted);
/Date(ms + timezone)/
は、JSON日付のASP.NET構文です。このような日付を解析するために momentjs のようなライブラリを使用したい場合があります。後で日付を操作または印刷する必要がある場合に便利です。
モーメントモーメントのインポート:
var fulldate = new Date(1370001284000);
var converted_date = moment(fulldate).format(");
反応を使用する場合:
import Moment from 'react-moment';
Moment.globalFormat = 'D MMM YYYY';
その後:
<td><Moment unix>{1370001284}</Moment></td>
ライブラリでmomentjsを使用すると、javascriptでデータ情報全体をオブジェクトに含めることができます。
const today = moment(1557697070824.94).toObject();
次のプロパティを持つオブジェクトを取得する必要があります。
today: {
date: 15,
hours: 2,
milliseconds: 207,
minutes: 31,
months: 4
seconds: 22,
years: 2019
}
日付を計算する必要がある場合に非常に便利です。