var timeArr = moment().format('HH:mm:ss').split(':');
var timeInMilliseconds = (timeArr[0] * 3600000) + (timeArr[1] * 60000);
このソリューションは動作しますが、テストしますが、自分のコードを使用する代わりに、モーメントAPIを使用したいだけです。
このコードは、ミリ秒単位でTODAYS時間を返します。ミリ秒単位で別の関数を呼び出す必要があります...エポックを使用できません。ミリ秒単位でフォーマットされた今日の時間が必要です。午前9:00 = 3.24e + 7ミリ秒午後9:00 = 6.84e + 7ミリ秒。
ドキュメントから: http://momentjs.com/docs/#/parsing/unix-timestamp-milliseconds/
したがって、次のいずれかを使用します。
moment(...).valueOf()
既存の日付を解析し、表現をUNIXタイムスタンプに変換する
moment().valueOf()
現在のUNIXタイムスタンプ用
このリンクを参照してください http://momentjs.com/docs/#/displaying/unix-timestamp-milliseconds/
valueOf()
は探している関数です。
私の答えを編集する(OPはエポック以降ではなく今日のミリ秒が必要です)
milliseconds()
関数ORが必要な場合は、moment().valueOf()
のルートに行くことができます
var timeArr = moment().format('x');
format()documentation に従ってUnixミリ秒タイムスタンプを返します。
同じ日の午前12時から現在のタイムスタンプを減算できます。
現在のタイムスタンプを使用:
moment().valueOf() - moment().startOf('day').valueOf()
任意の日を使用:
moment(someDate).valueOf() - moment(someDate).startOf('day').valueOf()
個々の時間コンポーネントを取得して、合計を計算できます。 Momentは、この機能が既にきちんとパッケージ化されていると期待しているようですが、そうではありません。人々が非常に頻繁に必要としているものだとは思いません。
例:
var m = moment();
var ms = m.milliseconds() + 1000 * (m.seconds() + 60 * (m.minutes() + 60 * m.hours()));
console.log(ms);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>