2016-07-31 2 views
0

ISO 날짜 문자열을 순간 순간으로 변환 한 다음 .format("MM/DD/YYYY HH:MM")을 사용하여 그 순간의 서식을 지정했습니다.12HR에서 분 정밀도 포맷의 손실을 해결하는 방법은 무엇입니까?

최종 형식화 된 순간을 출력 할 때 원래의 iso 문자열에서 다시 읽은 값과 비교할 때 분 값이 올바르지 않습니다.

이 경우 문자열에 표시된대로 ISO 문자열 값은 3:10 PM 또는 "2016-08-03T03 : 10 : 00.000Z"입니다. 디버그 동안

But when I call format the moment value is 4:07PM meaning three minutes have been subtracted during the format.는 I 각각 할당 단계에서 다음 값을 유의 :

1 단계 (AN ISO 문자열 dB 값으로 변환)

var actualBCR_Local = moment.utc('@Model.Escalation.Actual_BCR_ISO').toISOString(); 

value: "2016-08-03T03:10:00.000Z" 

2 단계 (변환 현지 시간을 나타 내기 위해 순간 순간까지의 ISO 문자열 GMT + 1) :

var actualBCR_Local_Moment = moment(actualBCR_Local); 

value: Wed Aug 03 2016 04:10:00 GMT+0100 (GMT Daylight Time) 
,451,515,

3 단계 (나는 4시 10분해야하는 원래의 값에 대한로 3 분 잃게 프레젠테이션 12HR 형식의 순간을 포맷, 문제는 여기에) :

var actualBCR_Local_Formatted = actualBCR_Local_Moment.format("MM/DD/YYYY HH:MM"); 

value: "08/03/2016 04:08" 

가 어떻게 방지 할 수 있습니다 12HR 형식의 순간을 포맷 할 때 분 정밀도가 손실됩니까? 이 section에서 잘못된 형식을

을 사용하기 때문이다

답변

2

, 당신은 당신이 당신이 정확한 시간을 얻을 것이다 HH:mm를 사용하는 경우 hour:month

을 의미 HH:MM를 사용하고 있음을 발견 할 것이다.

하고 2 개 손실을 가지고 그 이유는,이 "달"로 08을 표시의 원인이 여기

내가

example here

을 테스트 한 것입니다