나는 momentjs로 무엇이든 할 수 있고 더 많은 관련 날짜를 할 수 있다는 것을 알고 있습니다. 그러나 당황스럽게도, 나는 단순한 것처럼 보이는 것을 시도하는 데 어려움을 겪고 있습니다 : 2 번의 차이를 얻는 것.
예:
var now = "04/09/2013 15:00:00";
var then = "04/09/2013 14:20:30";
//expected result:
"00:39:30"
내가 시도한 것 :
var now = moment("04/09/2013 15:00:00");
var then = moment("04/09/2013 14:20:30");
console.log(moment(moment.duration(now.diff(then))).format("hh:mm:ss"))
//outputs 10:39:30
나는 그 "10"이 무엇인지 이해하지 못한다. 나는 브라질에 살고 있으므로 관련이 있다면 utc-0300입니다.
결과 moment.duration(now.diff(then))
는 올바른 내부 값이있는 기간입니다.
days: 0
hours: 0
milliseconds: 0
minutes: 39
months: 0
seconds: 30
years: 0
그래서 내 질문은 : momentjs Duration을 시간 간격으로 변환하는 방법은 무엇입니까? 확실히 사용할 수 있습니다
duration.get("hours") +":"+ duration.get("minutes") +:+ duration.get("seconds")
그러나 나는 완전히 누락 된 더 우아한 것이 있다고 느낍니다 .
업데이트
위의 예에서, 가까이 찾고 now
있습니다 :
Tue Apr 09 2013 15:00:00 GMT-0300 (E. South America Standard Time)…}
그리고 moment(moment.duration(now.diff(then)))
:
Wed Dec 31 1969 22:39:30 GMT-0200 (E. South America Daylight Time)…}
왜 두 번째 값이 일광 시간 (-0200)인지 확실하지 않지만 날짜가 마음에 들지 않을 것이라고 확신합니다. (
업데이트 2
1969 년 12 월 31 일은 일광 절약 시간이 사용 된 날짜이기 때문에 값이 -0200 일 수 있습니다.