moment.js dapatkan waktu saat ini dalam milidetik?


93
var timeArr = moment().format('HH:mm:ss').split(':');

var timeInMilliseconds = (timeArr[0] * 3600000) + (timeArr[1] * 60000);

Solusi ini berfungsi, uji, tetapi saya lebih suka menggunakan api momen daripada menggunakan kode saya sendiri.

Kode ini mengembalikan waktu TODAYS dalam milidetik. Saya membutuhkannya untuk memanggil fungsi lain dalam milidetik ... Tidak dapat menggunakan epoch. Perlu waktu hari ini yang diformat dalam milidetik. 09.00 = 3.24e + 7 milidetik 21.00 = 6.84e + 7 milidetik.


9
var timeInMilliseconds = moment().valueOf();Lihat jsfiddle.net/rc1s2ek0
IronAces

ini sejak zaman .... Saya perlu waktu hari ini dalam milidetik bukan waktu.

Anda benar, tetapi pertanyaan Anda menyatakan bahwa Anda menginginkan waktu dalam milidetik ...
IronAces

2
Paling mudah mungkin untuk mendapatkan perbedaan waktu sekarang dikurangi waktu mulai hari ini
Geert-Jan

Jawaban:



38

Lihat tautan ini http://momentjs.com/docs/#/displaying/unix-timestamp-milliseconds/

valueOf() adalah fungsi yang Anda cari.

Mengedit jawaban saya (OP menginginkan milidetik hari ini, bukan sejak periode)

Anda menginginkan milliseconds()fungsi ATAU Anda bisa pergi ke rutemoment().valueOf()


1
Terima kasih tapi bukan itu yang saya tanyakan, itu sejak zaman zaman ... waktu saat ini dalam milidetik.

@ code20 ahh, gotcha. Sepertinya Amy menjawabnya di atas. Anda sedang mencari fungsi milidetik () atau Anda dapat membuat momen kosong dan menggunakan fungsi valueOf. Saya merevisi jawaban saya di atas. momentjs memiliki dokumentasi yang sangat bagus tentang hal-hal di sana dan itu cukup terorganisir. Anda dapat melakukan beberapa hal yang cukup rapi dengannya. Anda harus memeriksanya jika ada kesempatan!
Yakobus

Jawaban Amy salah. yaitu waktu 0-999 milidetik, saya telah membaca banyak dokumen dan mencari. Benar-benar tidak tahu yang satu ini.

@ code20 Anda ingin mengetahui milidetik dari tanggal hari ini? Saya sedikit bingung. Anda tidak dapat menggunakan waktu epoch milidetik?
Yakobus

1
@ code20 Anda benar-benar harus lebih spesifik tentang apa yang Anda inginkan. Sejauh ini Anda telah menerima jawaban untuk md sejak zaman, atau "md waktu saat ini", yang Anda minta. Milidetik sejak tengah malam sangat berbeda.
Amy

21
var timeArr = moment().format('x');

mengembalikan Stempel Waktu Milidetik Unix sesuai dengan dokumentasi format () .


8
Hati-hati, ini mengembalikan stempel waktu dalam milidetik tetapi sebagai String, prefere moment (). ValueOf () yang mengembalikan angka
Julien

10

Anda bisa mengurangi cap waktu saat ini dari jam 12 pagi pada hari yang sama.

Menggunakan stempel waktu saat ini:

moment().valueOf() - moment().startOf('day').valueOf()

Menggunakan hari sewenang-wenang:

moment(someDate).valueOf() - moment(someDate).startOf('day').valueOf()

0

Anda bisa mendapatkan komponen waktu individu dan menghitung totalnya. Anda tampaknya mengharapkan Moment sudah memiliki fitur ini yang dikemas dengan rapi untuk Anda, tetapi ternyata tidak. Saya ragu itu adalah sesuatu yang sangat dibutuhkan orang.

Contoh:

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>


0

Karena utas ini adalah yang pertama dari Google yang saya temukan, satu cara akurat dan malas yang saya temukan adalah:

const momentObject = moment().toObject();
// date doesn't exist with duration, but day does so use it instead
//   -1 because moment start from date 1, but a duration start from 0
const durationCompatibleObject = { ... momentObject, day: momentObject.date - 1 };
delete durationCompatibleObject.date;

const yourDuration = moment.duration(durationCompatibleObject);
// yourDuration.asMilliseconds()

sekarang cukup tambahkan beberapa prototipe (seperti toDuration ()) / .asMilliseconds () ke dalam momen dan Anda dapat dengan mudah beralih ke milidetik () atau apa pun!


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.