나는 bool과 다른 데이터 유형 모두로 &&
, ||
및 !
이 어떻게 작동하는지 이해하지 못합니다. 어떻게 사용합니까?JavaScript의 논리 연산자 - 어떻게 사용합니까?
답변
자바 스크립트의 모든 값은 "진실"또는 "거짓"입니다.
a && b
는
두 사업자가 하나의 반환 후 어떤 피연산자를 평가하지 않습니다 처음 truthy 피연산자로 평가 첫 falsy 피연산자
a || b
로 평가됩니다. 모든 피연산자가 일치하지 않으면 마지막 피연산자로 평가됩니다.
a
가 falsy이고 false
경우 a
가 truthy 경우
!a
는true
평가.
모든 값은 다음을 제외하고 진실입니다
false
0
NaN
""
null
undefined
당신은 다음 & & truthy 사용되는 두 가지 조건을 모두을 테스트하려면 다음 두 조건의 하나 또는 둘 모두을 테스트하려면
if (isX && isY)
{
// Do something.
}
을 사실이라면 다음을 사용하십시오 : |
if (isX || isY)
{
// Do something.
}
!
은 부울을 반전합니다 (truey 값은 false가되고 그 반대도 마찬가지입니다).
'document.write ("Cat"| "Dog")'는 어떨까요? – DarkLightA
@DarkLightA : 나는 그런 코드를 작성하지 말 것을 제안합니다! 그것은 암시 적 변환을 유발하고 모든 사람을 혼란스럽게합니다. –
좋아, MDC에 있었어 : D – DarkLightA
- 1. 논리 연산자 ||
- 2. MySQL 논리 연산자
- 3. && JavaScript의 연산자 우선 순위
- 4. 부울 논리 연산자 이상 (논리 게이트)
- 5. 스프링 SpEL 논리 연산자
- 6. C++ 논리 및 연산자
- 7. 논리 AND 연산자
- 8. 루비 논리 연산자
- 9. PHP는 논리 연산자 비교 평가
- 10. PHP의 평가() 논리 연산자 오류
- 11. 논리 및 비트 연산자 VB
- 12. C#의 논리 연산자 구조
- 13. PHP 논리 연산자 내에서 배열 변수 정의
- 14. JavaScript의 Underscore.js 라이브러리에서 '컨텍스트'는 무엇을 의미하며 어떻게 사용합니까?
- 15. 너비를 높이에서 어떻게 사용합니까?
- 16. 왜 Decimal.Multiply 대 연산자 곱하기를 사용합니까?
- 17. XPath 연산자 "! =". 어떻게 작동합니까?
- 18. 복잡한 논리 연산
- 19. 파이썬, 정규 표현식, 명명 된 그룹 및 "논리 연산자"
- 20. 파스칼에서 논리 연산자 (< > = 등)가있는 사례 명세서
- 21. 노출 된 필터의 논리 연산자 (잠금 해제) 제거
- 22. 루아 - 비트 논리 연산
- 23. 숫자가 논리 연산자 AND 만 사용하여 4의 배수인지 어떻게 알 수 있습니까?
- 24. JavaScript의 동적 변수
- 25. 개체 연산자 (->)
- 26. 논리
- 27. 논리 표현 파서
- 28. Binding ElementName. 시각적 트리 또는 논리 트리를 사용합니까
- 29. JavaScript의 버그
- 30. 어떻게 전체 대역폭을 사용합니까?
"모든 * 값 *은 진실입니다 ..."라고해야합니다. 즉, 'undefined'가 값이기 때문에 기본값으로이 값을 보유하는 'undefined'변수가 있습니다. 또한 'NaN'은 다른 것과 동등하지 않으며 자체적으로조차 아니다. –
@Ivo : 1 : 수정 됨. 2 : 그건 부적당하다. '! NaN'은'true'이므로'NaN'은 위증입니다. – SLaks
여전히 NaN == NaN은 거짓입니다. 위의 목록에서 NaN이 다른 모든 위조 된 값처럼 작동한다고 생각할 수도 있습니다. –