2016-10-02 3 views
0

나는 이상한 것을 발견했으며 달을 계산하는 방법에 대한 문서를 찾을 수 없었다.momentjs는 몇 달 전에 어떻게 계산됩니까?

오늘은 10 월 2 일자 2016입니다. 나는 다음과 같은 momentjs 함수를 호출 할 때, 나는 누군가 6 월 17 일 4 개월 전 왜 나에게 설명해 주시겠습니까

moment("20160617", "YYYYMMDD").fromNow(); 
"4 months ago" 
moment("20160618", "YYYYMMDD").fromNow(); 
"3 months ago" 

를 얻을 6 월 18 일 3 개월 전인가?

답변

2

가장 좋은 추측 : 범위와 관련이 있습니다 moment 각 문자열을 계산합니다. M의 키를보고 25 - 45 일입니다. 따라서 "한 달"은 보통 달보다 약 15 일 이상 지속될 수 있습니다. 거꾸로 계산하면 한 달에 18 일이 다음 달 2 일에서 15 일 사이입니다. 17 일은 그 범위에서 벗어날 것입니다. 이것은 모두 한 달이 "30 일"이라고 가정합니다.이 계산은 이런 종류의 계산에 사용됩니다.

+1

이것은 옳습니다. https://github.com/moment/moment/blob/develop/min/moment-with-locales.js#L3928 실제 인수는 한 달에 30.436875 일입니다. – danniel

관련 문제