나는 switch 문을 사용하는 스크립트를 작성 중이다. 변수를 선언 할 때 기본 부울 값 true, correct가 있습니까? 글쎄, switch 문에서 활용 될 때별로 그렇지 않다. 여기기본적으로 JavaScript 변수의 부울 값은 무엇입니까?
는 자바 스크립트를 내가 가지고있다 : 기본적으로http://codepen.io/anon/pen/IDLqd/
, 내가 뭘하려고 그들이 window.prompt에 입력되는 데이터에 따라 선호 목록 스타일의 유형을 사용자에게있다() 메소드를 호출합니다. 1, 2 또는 3을 입력하면 프롬프트의 지시에 따라 목록이 표시됩니다. 그러나 유효한 정수로 입력하지 않으면 변수 validInput은 부울 값 false로 설정됩니다.
여기에서 validInput 변수의 부울 값이 true인지 확인하려면 if 문을 실행하고 그렇지 않은 경우 많은 변수의 값을 화면에 출력하고 그렇지 않은 경우 " 잘못된 선택 ".
코드가 validInput을 if 문에서 false 값만 갖는 것으로 인식하는 이유는 무엇입니까? 다른 값이 프롬프트 창에 입력되면 false 값만 할당됩니까? 이 프로그램을 제대로 실행하려면 각 스위치의 경우 validInput 값을 true로 명시 적으로 정의해야합니다.
왜 이런가요? 누군가 설명해 줄 수 있니?
감사합니다. 아론
선언되었지만 설정되지 않은 변수의 기본값은 "false", 즉'undefined == false','undefined! = true'이지만, 실제로는 false가 아닙니다. 즉'undefined! == false', 'undefined! == true'. – Dave
당신의 경우 실행이 기본값으로 가고 유효성 검사를 false로 설정했기 때문에 미리 초기화하지 않았습니까? – pj013
@ 데이브 : 나는 당신이 말하는 것을 얻습니다. 그래서 어떤면에서는 null로 간주 될 수 있고 null은 "허위"로 간주됩니다. undefined와 null의 차이점은 무엇입니까? 항상 내가 가지고있는 것과 같은 문장에서 사용되기 전에 항상 변수를 정의하는 것이 좋은 습관입니까? –