2016-12-06 14 views
0

Moment.JS를 사용하여 주어진 날의 시간 수를 계산하는 방법을 알고 싶습니다. 그 이유는 하루 24 시간이 될 것입니다. 그러나 일광 절약 시간이 봄에 시작되는 날은 25 시간입니다.Momentjs를 사용하여 주간 조명 절약 시간 계산 방법

또는 오전 2시 이후에 DST가 시작된다는 것을 염두에두고 봄의 일광 절약 시간제에 도달했는지 계산하려면 어떻게 moment.js 또는 js를 사용할 수 있습니까?

내가 사용하려고 코드는

순간 ([2017, 2, 12])입니다 isDST().;

그러나 방법이 나는 등의 DST 경우가 말해 않습니다뿐만 아니라 오전 2시

+0

http://stackoverflow.com/questions/11887934/how-to-check-if-the-dst-daylight-saving-time-is-in-effect-and-if-it-is-whats – manonthemat

+1

및 http://stackoverflow.com/questions/21918095/moment-js-how-to-detect-daylight-savings-time-and-add-one-day – manonthemat

+0

[ask]를 읽으십시오. 핵심 구절 : "검색 및 연구"및 "당신이 직접 해결하지 못하게하는 어려움을 설명하십시오." –

답변

2

단순히 하루의 시작 사이의 시간 차이를받을 경우 그 이후에 확인할 수 있으며 시작 할뿐만 사용 할 수 있습니다 다음날.

var m = moment([2017, 2, 12]); // your moment object, however you create it. 

var a = moment(m).startOf('day'); 
var b = moment(m).add(1, 'day').startOf('day'); 

var h = b.diff(a, 'hours'); // 23, 24, 25, etc. 

시간대는 전 세계에서 다릅니다. 일부는 DST를 수행하지만 일부는 수행하지 않습니다. 어떤 사람들은 다른 날짜와 다른 시간에 그것을합니다. 결과적으로 23.5 또는 24.5를 얻는 것이 가능합니다. 보통 1 시간 (호주 하우 섬) 대신 30 분 DST 바이어스가있는 장소가 적어도 하나 있기 때문입니다. UTC-04에 다시 30 : : 그리고 또한 베네수엘라 UTC-04에서 자신의 표준 시간을 이동할 때와 DST 관련이없는 전환이 장소가 00 월 또한 2016 년

에, 당신은 말했다 :

... 그러나 서머 타임이 봄에 시작하는 날은 25 시간이됩니다.

실제로 가을에는 추가 시간이 있습니다. 봄에는 1 시간 (23 시간)이 걸릴 것입니다.

+0

위의 코드는 23을 반환합니다. 스프링이 25 시간이므로 24를 반환해야합니다. –

+0

아니요, 봄에는 23 시간입니다. 미국의 경우 2시에서 2시 59 분까지의 시간은 시계가 "앞쪽으로 튀어 나와"* 건너 뛴다 * 며 하루에서 한 시간을 제거합니다. 1 시간 59 분에서 1시 1 분까지 두 번 반복하기 위해 1 시간 59 분에서 다시 1 시간 59 분으로 "폴백 (fall back)"하는 * fall *에서 25 시간입니다. –