2012-08-07 3 views
1

JavaScript date.getMonth() 및 date.getUTCMonth()를 사용할 때 일부 결과가 발견되고 일치하지 않습니다.getMonth getUTCMonth difference 결과

<!DOCTYPE html> 
<html> 
<body onload="myFunction()"> 

<p id="demo">Click the button to display the month</p> 

<script type="text/javascript"> 
function myFunction() 
{ 
var d = new Date(2012, 8, 1); 
var x = document.getElementById("demo"); 
x.innerHTML=d; 
x.innerHTML+='<br/>result: ' + d.getMonth(); 
x.innerHTML+='<br/>result UTC: ' + d.getUTCMonth(); 

} 
</script> 

</body> 
</html> 

본 실시 예의 출력은 : I가 날짜를 변경할 경우

는 (2012, 2, 1)을 출력한다
Sat Sep 01 2012 00:00:00 GMT+0100 (Hora de Verão de GMT) 
result: 8 
result UTC: 7 

:

Thu Mar 01 2012 00:00:00 GMT+0000 (Hora padrão de GMT) 
result: 2 
result UTC: 2 
다음은 문제를 보여

첫 번째 예제에서 getMonth는 7을 반환하고 getUTCMonth는 8을 반환합니다. 두 번째 예제에서는 둘 모두 동일한 값 2를 반환합니다.

이 상황을 이미 경험 한 사람이 있습니까? 저는 포르투갈 출신이며 GMT와 관련이 있다고 생각합니다.하지만이 상황이 왜 같은지를 이해하지 못합니다. 예제가 동일한 환경에서 실행되기 때문입니다. 진보

답변

1

당신은이 DST의 차이에 의해 발생되는 것을 발견 할 것이다에

감사합니다.

관련 문제