이것은 확장 된 버전이 내가 상상했던 방식대로 작동하지 않는 이유에 의해 진술이 어리둥절 해지면 속기를 쓰는 첫 번째 시도입니다.약식 구문이 자바 스크립트에서 작동하지 않는 이유는 무엇입니까?
코드 1 -
if(document.getElementById != false) {
alert("The document object model is supported by: " + navigator.appName);
}
코드 3 작동합니까 - -
가if(document.getElementById == true) {
alert("The document object model is supported by: " + navigator.appName);
}
코드 2가 작동하지 않습니다 수행하는 속기가 작동
if(document.getElementById) {
alert("The document object model is supported by: " + navigator.appName);
}
왜 3의 단축형을 작동하지 않는 첫 번째 코드 샘플로 확장하면 != false
과 동일한 경우 왜 작동합니까?
표현식을 부울 상수와 비교하는 것은 실제로 나쁜 습관입니다. – Pointy
@Pointy - 그럼 if (document.getElementById) 표현식을 읽으면 어떻게 될까요? if (condition == true/somevalue) 그런 다음 코드를 실행 하시겠습니까? – PeanutsMonkey
함수 나 표현식에 부울 결과가있는 경우 비교할 필요가 없습니다. 표현식을 "속기"라고하는 것으로 사용할 준비가되었습니다. 즉, if 문의 괄호 안의 표현식은 부울로 해석됩니다. 부울 값을 가진 표현식을 사용하면 완료됩니다. 만약 당신이 그것을 부정하고 싶다면, 그 앞에'! '를 두십시오. – Pointy