2017-12-26 18 views
-2

을 사용 시간대와 다른 날짜에 시간대 한 날짜를 변환 한 날짜 시간내가 가진 자바 스크립트

Date_Dubai = 2017년 12월 29일 오전 1시 아시아/두바이

하고 내가 그것을 변환해야하는 " Asia/Kolkota "를"Date_Dubai "형식으로 변환합니다.

+0

가능한 중복 https://stackoverflow.com/questions/10087819/convert-date-to-another-timezone-in -javascript) –

+0

순수한 자바 스크립트로 작성하십시오 –

+0

제 3의 응답을보십시오 –

답변

0
dt = new Date(); 
localTime = dt.getTime(); //current localtime in milisecond. 
localOffset = dt.getTimezoneOffset() * 60000; 
//getTimezoneOffset() returns in minutes so converting it into millisecond(*60000). 

시간대 오프셋은 UTC와 현지 시간의 차이입니다 (분). 즉, 현지 시간대가 UTC보다 늦으면 오프셋이 양수이고 앞에 오는 경우 음수입니다. (Doc)

로컬 시간대 오프셋을 현지 시간에 더하여 현재 UTC 시간을 가져옵니다.

utc = localTime + localOffset; 

UTC 시간을 얻은 후 대상 도시의 UTC 오프셋을 시간 단위로 가져옵니다. 두바이 오프셋은 +4 시간입니다.

offset = 4; // GST (Gulf Standard Time) ahead +4 hours from utc 
    dubaiTime = utc + (3600000*offset); // convert offset into milisecond and add to UTC time. 
    newTime = new Date(dubaiTime); 
    console.log(newTime); 

더 많은 정보에 대한 Date Object

([자바 스크립트에서 다른 시간대로 날짜 변환]의
+1

대답의 품질을 향상시키기 위해 귀하의 솔루션이 작동하는 이유를 설명하십시오. –

+1

@EricHauenstein 이제 괜찮습니다. –

+0

훌륭한 답변입니다. –