Tôi đang sử dụng moments.js để làm việc với các ngày trong javascript. Tất cả các ngày đều ở dạng UTC (hoặc phải là).Sự khác biệt về Moment.js giữa các ngày UTC
Tôi có ngày sau (60 phút từ thời điểm hiện tại):
//Wed, 04 Apr 2012 21:09:16 GMT
to = moment.utc().add('m', 60).toDate();
Bây giờ tôi muốn nhận được sự khác biệt chỉ trong vài giây giữa ngày này và UTC datetime hiện nay, vì vậy tôi làm:
seconds = moment.utc().diff(to, 'seconds');
Điều này trả về 10800
thay vì 3600
, vì vậy 3 giờ thay vì một.
Bất kỳ ý tưởng nào tôi đang làm sai?
Cảm ơn bạn!
EDIT:
tôi cập nhật các dòng để seconds = moment().diff(to, 'seconds');
và nó được giây currect, nhưng nó -3600
thay vì tích cực.
EDIT:
bây giờ tôi có hai khoảnh khắc những đối tượng:
{ _d: Thu, 05 Apr 2012 17:33:18 GMT, _isUTC: true }
{ _d: Thu, 05 Apr 2012 16:38:45 GMT, _isUTC: true }
d1 và d2.
Khi tôi làm d1.diff(d2, 'hours', true);
trả lại số 4
. Nó chắc chắn là một cái gì đó để làm với UTC tôi nghĩ, nhưng có vẻ như điều này nên làm việc.
Hm, rằng 'thành' thực sự là một giá trị đến từ các cơ sở dữ liệu, mà đã được tạo bằng cách sử dụng mã ở trên, vì vậy tôi phải sử dụng toDate() để lấy chuỗi lưu trữ. – dzm
@Super Tôi đã chỉnh sửa bài đăng. Làm việc với các đối tượng thời gian là UTC, nhận các vấn đề tương tự. – dzm