Mongodbでは、日付と時刻をISODate形式で保存しています。
これはこんな感じ
ISODate("2012-07-14T01:00:00+01:00")
Nodejs/javascriptを使用して、時間コンポーネントを表示するにはどうすればいいですか?
Time : 01:00
私はこれを簡単にするためにmomentjsを使用していますが、momentjsがISODate形式をサポートしているように思えます。
ご協力ありがとうございます。
JavaScriptのDateオブジェクトはISO日付形式をサポートしているため、日付文字列にアクセスできる限り、次のようなことができます。
> foo = new Date("2012-07-14T01:00:00+01:00")
Sat, 14 Jul 2012 00:00:00 GMT
> foo.toTimeString()
'17:00:00 GMT-0700 (MST)'
秒とタイムゾーンのない時間文字列が必要な場合は、DateオブジェクトでgetHours()メソッドとgetMinutes()メソッドを呼び出して、時間を自分でフォーマットできます。
MongoDBの ISODate() は、JavaScript日付オブジェクトをラップし、ISO日付文字列の操作を容易にする単なるヘルパー関数です。
通常のJS日付を処理するのと同じメソッド のすべてを引き続き使用できます。
ISODate("2012-07-14T01:00:00+01:00").toLocaleTimeString()
// Note that getHours() and getMinutes() do not include leading 0s for single digit #s
ISODate("2012-07-14T01:00:00+01:00").getHours()
ISODate("2012-07-14T01:00:00+01:00").getMinutes()
// from MongoDate object to Javascript Date object
var MongoDate = {sec: 1493016016, usec: 650000};
var dt = new Date("1970-01-01T00:00:00+00:00");
dt.setSeconds(MongoDate.sec);