javascript의 instanceof 및 typeof_javascript 기술에 대한 간략한 토론

WBOY
풀어 주다: 2016-05-16 16:12:39
원래의
1191명이 탐색했습니다.

instanceof와 typeof는 예전에도 가끔 사용했는데, 특히 typeof가 상대적으로 더 많이 사용되는데요. 오늘은 ext 소스코드를 공부하다보니 갑자기 여러 곳에 사용되는 것 같더라고요. 하지만 차이점도 포함되어야 합니다. 저는 온라인에서 일부 기사를 읽고 그 사이의 관계를 어느 정도 이해하고 있습니다.

Instanceof와 typeof는 모두 변수가 비어 있는지 또는 변수 유형이 무엇인지 확인하는 데 사용될 수 있습니다.
Typeof는 변수의 유형을 얻는 데 사용됩니다. Typeof는 일반적으로 숫자, 부울, 문자열, 함수, 개체, 정의되지 않은 결과만 반환할 수 있습니다. if(a)를 사용하는 대신 typeof를 사용하여 변수가 존재하는지 여부를 확인할 수 있습니다(예: if(typeof a!="undefine"){}. 왜냐하면 a가 존재하지 않으면(선언되지 않음) For Array 오류가 발생하기 때문입니다. , Null 특수 개체에 대해 typeof를 사용하면 개체가 항상 반환됩니다. 이것이 typeof의 제한 사항입니다.

객체가 배열인지 확인하고 싶거나, 변수가 객체의 인스턴스인지 확인하려면, instanceof를 사용해야 합니다. 인스턴스of는 변수가 객체의 인스턴스인지 확인하는 데 사용됩니다. 예를 들어 var a=new Array(); 경고(a 인스턴스of Array); 는 true를 반환합니다. 배열은 객체의 하위 클래스이기 때문입니다. 또 다른 예: function test(){};var a=new test();alert(a instanceof test)는 true를 반환합니다.

Instanceof의 경우 함수의 인수라는 문제를 하나 더 삽입해야 합니다. 우리는 모두 인수가 배열이라고 생각할 수 있지만, 인스턴스of를 사용하여 테스트해 보면 인수가 배열이 아니라는 것을 알 수 있습니다. 배열 객체는 비슷해 보이지만.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿