2014-11-25 5 views
0

당신의 도움이 필요합니다.두 날짜의 차이를 계산하면 잘못된 caculation이 발생합니다

나는 -1의

오늘 날짜 계산을 초래할한다, 내 자신에 2014년 11월 26일 마이너스 2014년 11월 25일의

오늘 날짜 뭔가를 알아낼 수 없습니다 2014년 11월 25일 마이너스 2014년 11월 25일 1

아래 함수의 계산 결과를해야 2014년 11월 25일 마이너스 2014년 11월 24일 0

오늘 날짜의 계산 결과한다 잘못된 것, 신선한 눈이 필요합니다.

var today = new Date() 

var date1 = new Date("11/26/2014"); 

var diffDays = Math.ceil((today.getTime() - date1.getTime())/(1000*60*60*24)); 

alert(diffDays) 

이 함수는 결과 0을 잘못 표시합니다.

+1

-0.18377817129629628의 Math.ceil은 0을 반환합니다. 그 말이 맞을 것이다. –

답변

0

당신은 math.round 또는 math.abs가 필요합니다

var today = new Date() 

var date1 = new Date("11/26/2014"); 

var diffDays = Math.round((today.getTime() - date1.getTime())/(1000*60*60*24)); 

alert(diffDays) 
1

음수가 없는지 확인하려면 순서에 관계없이 Math.abs이 필요합니다.

var diffDays = Math.ceil(Math.abs(today.getTime() - date1.getTime())/(1000*60*60*24)); 
0

날짜 차이가 -0.42831302083333334가 발생합니다, Math.ceil()는 가장 가까운 긍정적 정수쪽으로 반올림합니다,

관련 문제