2014-06-16 1 views
2

를 반환, 나는 0에서 시작 자바 스크립트 요일, 일요일 = 0, 토요일 = 6.자바 스크립트, getDay() 시작하기 잘못된 번호

그러나, 나는 실종 오전 간단한 무언가가 있다는 것을 알고 여기,하지만 다음 코드는 항상 원하는 것을 반환하지만 1은 적습니다.

이 6 반환하지만 잘못가는 뭐죠 5.

var string = "2014-06-21"; 
var temp = new Date(string); 
alert(temp.getDay()); 

누구는 어떤 아이디어가 반환하고, 그것을 어떻게 고정 될 수있다한다? 감사.

+0

"2014-06-21"은 토요일입니다. –

+0

요일은 0에서 시작합니다 – kidwon

+0

@kidwon 요일은 0에서 시작합니다 (OP가 이미 언급 한 바와 같이). 그러나 1 일의 시작 요일은 1 – Ian

답변

3

당신은 문자열에서 날짜를 만드는 경우 시간을 지정해야합니다 :

var string = "2014-06-21 00:00:00"; 
var temp = new Date(string); 
alert(temp.getDay()); 

당신이 (날짜 문자열에서) 시간을 지정하지 않기 때문에 당신은 아마 전날을 얻고있다. 이 경우, 현재의 시간대가 사용됩니다 (광산은 GMT-03H) 또 다른 옵션은 매개 변수의 같은 번호를 취하는 Date 생성자 사용하여 날짜를 만드는 것입니다

:

new Date(year,month,day); 

또는의를 귀하의 사례 :

var temp = new Date(2014, 6, 21); 
alert(temp.getDay()); 
+1

입니다 ('.getDay()'여야합니다). – Ian

+1

@Ian 네 말이 맞아. 방금 내 글을 편집했습니다. 감사! –

관련 문제