2014-12-28 1 views
2

간단한 질문 : 값이 이 양수보다 크거나 같으면 어떻게 테스트합니까 (+0)? 또는 이 음수 인 0보다 큰지 테스트하려면 어떻게해야합니까? (-0)?JavaScript : 양수보다 크거나 같습니까?

val >= 0 또는 val >= +0 또는 val > -0 트릭을 수행하지 마십시오.

은 (내가 moments.js diff() 출력을 처리하기 위해 필요합니다.)

감사합니다!

+3

더 긍정적이거나 부정적인 제로 없다, 단지 제로가있다! – adeneo

+1

@adeneo : 있습니다. http://en.wikipedia.org/wiki/Signed_zero 내 콘솔에서 –

+0

-0 == + 0 로그가 참이므로 자바 스크립트에서 동일합니다 – cirtrus

답변

5

숫자가 양수가 0보다 큰지 (예 : +0) 테스트 할 수 있습니까? 그 상호가 긍정적인지

점검 :

1/value > 0 

+0의 역수 Infinity 긍정적이다. -0의 역수는 음수 Infinity입니다.

UPDATE :diff+0 또는 -0 문서화하지 않는 것 반환 할 수 있습니다, 그래서이 동작에 의존하는 것을 망설이지 것이 사실. 대신 isAfter 또는 isBefore 사용을 고려 :

var d = '2014-12-28'; 
console.log(moment(d).isAfter(moment()));   // Is the date tomorrow or later? 
console.log(!moment(d).isBefore(moment(), 'day')); // Is the date today or later? 
+0

당신은 그것을 못 박았습니다! 정확히 내가 무엇을 찾고 있었는지. 감사. – koubic