js가 정의되지 않은 유형을 결정
오늘은 showModalDialog를 사용하여 페이지를 열고 값을 반환합니다. 열린 페이지에서 닫기 버튼을 클릭하거나 브라우저에서 직접 닫기 버튼을 클릭하면 반환값이 정의되지 않으므로
스스로 판단하시기 바랍니다
var reValue=window.showModalDialog("","","");
if (reValue== 정의되지 않음){
경고("정의되지 않음");
}
알 수 없다는 것을 알고 결국 정보를 확인했고 typeof를 사용해야 했습니다
메서드:
if (typeof(reValue) == "undefine") {
Alert("undefine");
}
typeof가 문자열을 반환합니다. 6가지 가능성이 있습니다: "숫자", "문자열", "부울", "객체", "함수", "정의되지 않음"
js에서 정의되지 않음, null, NaN의 차이점
1. 유형 분석:
js의 데이터 유형에는 undefine, boolean, number, string, object 등이 있습니다. 처음 4가지 유형은 기본 유형이고 다섯 번째 유형은 참조 유형입니다. .
var a1;
var a2 = true;
var a3 = 1;
var a4 = "안녕하세요";
var a5 = new Object();
var a6 = null ;
var a7 = NaN;
var a8 = 정의되지 않음;
alert(typeof a); //"정의되지 않음" 표시
alert(typeof a1); //"정의되지 않음" 표시
Alert(typeof a2); //"부울" 표시
alert(typeof a3); //"숫자" 표시
alert(typeof a4); //"문자열" 표시
alert(typeof a5) ; //"객체" 표시
alert(typeof a6); //"객체" 표시
alert(typeof a7); //"숫자" 표시
alert(typeof a8); 정의되지 않음"
위 코드에서 볼 수 있듯이 정의되지 않은 값과 할당되지 않은 값은 정의되지 않은 값이고, null은 특수 객체, NaN은 특수 숫자입니다.
2. 비교 연산
var a1; //a1의 값이 정의되지 않았습니다.
var a2 = null;
var a3 = NaN;
alert(a1 = = a2); //"true" 표시
alert(a1 != a2); //"false" 표시
alert(a1 == a3); //"false" 표시
alert(a1 ! = a3); //"true" 표시
alert(a2 == a3); //"false" 표시
alert(a2 != a3); //"true" 표시
alert( a3 == a3); //"false" 표시
alert(a3 != a3); //"true" 표시
위 코드에서 다음과 같은 결론을 내릴 수 있습니다. (1) 정의되지 않음과 null은 동일합니다. (2) NaN은 어떤 값과도 같지 않으며 그 자체와도 같지 않습니다.
JavaScript 정의되지 않은 속성
정의 및 사용법
정의되지 않은 속성은 JavaScript의 정의되지 않은 값을 저장하는 데 사용됩니다.
구문
정의되지 않음
설명
for/in 루프를 사용하여 정의되지 않은 속성을 열거할 수 없으며 삭제 연산자를 사용하여 삭제할 수 없습니다.
정의되지 않음은 상수가 아니며 다른 값으로 설정할 수 있습니다.
존재하지 않는 개체 속성을 읽으려고 시도하는 경우에도 정의되지 않음이 반환됩니다.
팁 및 참고 사항
팁: 값이 정의되지 않았는지 테스트하려면 === 연산자만 사용할 수 있습니다. == 연산자는 정의되지 않은 값을 null과 동일하게 간주하기 때문입니다.
참고: null은 값이 없음을 의미하고, 정의되지 않음은 선언되지 않은 변수, 선언되었지만 값이 할당되지 않은 변수 또는 존재하지 않는 개체 속성을 의미합니다.
예
이 예에서는 두 변수 중 하나가 정의되지 않았음을 감지합니다.
출력:
t2는 정의되지 않았습니다