Moment: Saat membuat tanggal UTC dengan Moment.js, penyetel zone() tidak melakukan apa pun (2.8.3)

Dibuat pada 11 Sep 2014  ·  3Komentar  ·  Sumber: moment/moment

Saya mendapatkan objek momen yang sama persis setelah menjalankan zone(-1) seperti yang saya lakukan ketika saya tidak menjalankannya. Contoh:

console.log( momen().utc().toDate() );
console.log( momen().utc().zone(-1).toDate() );

Saya berharap ini untuk menyesuaikan objek Date sesuai dengan offset zona waktu, tetapi tidak ... yah, tidak ada.

Komentar yang paling membantu

@rquinlivan Saya menggali lebih dalam. Anda dapat meneruskan argumen kedua ke zone() agar waktu jam dinding tetap sama:

> moment().format()
'2014-09-15T16:59:30-04:00'
> moment().zone(-1).format()
'2014-09-15T21:59:35+01:00'
> moment().zone(-1, true).format()
'2014-09-15T16:59:38+01:00'

Jadi Anda akan berakhir dengan:

> moment().toDate()
Mon Sep 15 2014 17:00:16 GMT-0400 (EDT)
> moment().zone(-1, true).toDate()
Mon Sep 15 2014 12:00:19 GMT-0400 (EDT)

Yang saya percaya adalah apa yang Anda inginkan.

FWIW, semua orang akan lebih cepat membantu Anda dengan open source jika Anda mendekati kesenjangan fungsionalitas dengan "hei, saya butuh fitur ini, bagaimana saya bisa membantu?" daripada seperti yang Anda lakukan.

Semua 3 komentar

Momen melacak contoh dalam waktu (yaitu milidetik sejak 1970 UTC). Apa yang Anda lakukan ketika Anda mengatakan utc() atau zone() , Anda mengubah cara waktu _diekspresikan_ (yaitu kami mengatakan "9:00" di EST tetapi "6:00" di PST , tapi itu waktu yang sama). Jadi mengubahnya kembali menjadi tanggal menjatuhkan metadata "Anda harus mencetak tanggal secara berbeda". Ini masih waktu yang sama.

Sepertinya Anda ingin mengubah waktu sebenarnya? Kami tidak memiliki fitur "mutasi waktu sehingga akan ditampilkan dengan cara yang sama di zona lain ini", meskipun, kami telah mendiskusikannya (atau apakah kami, @ichernev?)

Ya, saya ingin mengubah waktu sebenarnya. Ini cukup membatasi dan saya mungkin harus berhenti menggunakan perpustakaan ini karena keterbatasan ini.

@rquinlivan Saya menggali lebih dalam. Anda dapat meneruskan argumen kedua ke zone() agar waktu jam dinding tetap sama:

> moment().format()
'2014-09-15T16:59:30-04:00'
> moment().zone(-1).format()
'2014-09-15T21:59:35+01:00'
> moment().zone(-1, true).format()
'2014-09-15T16:59:38+01:00'

Jadi Anda akan berakhir dengan:

> moment().toDate()
Mon Sep 15 2014 17:00:16 GMT-0400 (EDT)
> moment().zone(-1, true).toDate()
Mon Sep 15 2014 12:00:19 GMT-0400 (EDT)

Yang saya percaya adalah apa yang Anda inginkan.

FWIW, semua orang akan lebih cepat membantu Anda dengan open source jika Anda mendekati kesenjangan fungsionalitas dengan "hei, saya butuh fitur ini, bagaimana saya bisa membantu?" daripada seperti yang Anda lakukan.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat