JavaScript isPrototypeOf 및 hasOwnProperty 사용에 대한 팁이 필요한 친구는 참고할 수 있습니다.
1.isPrototypeOf
isPrototypeOf는 지정된 객체 object1이 다른 객체 object2의 프로토타입 체인에 존재하는지 확인하는 데 사용됩니다. 그렇다면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
형식은 다음과 같습니다.
object1.isPrototypeOf(object2);
object1은 객체의 인스턴스입니다.
object2는 프로토타입 체인이 확인되는 또 다른 객체입니다.
프로토타입 체이닝을 사용하면 동일한 객체 유형의 여러 인스턴스 간에 기능을 공유할 수 있습니다.
object2의 프로토타입 체인에 object1이 포함되어 있으면 isPrototypeOf 메서드는 true를 반환합니다.
object2가 객체가 아니거나 object1이 object2의 프로토타입 체인에 나타나지 않으면 isPrototypeOf 메서드는 false를 반환합니다.
사용 예는 다음과 같습니다.
var re = /^s*/;
// 여기에 정규식 개체를 정의합니다.
// RegExp가 re의 프로토타입 체인 개체인지 확인하고 true를 반환합니다.
var bIsptt = RegExp.prototype .isPrototypeOf(re);
2.hasOwnProperty hasOwnProperty는 객체에 명명된 속성이 있는지 여부를 확인합니다. 이 메서드는 객체가 프로토타입 체인에 속성을 가지고 있는지 여부를 확인할 수 없습니다. .
프로토타입 체인이 아닌 객체 자체에 의해 속성이나 메서드가 정의된 경우 true를 반환하고, 그렇지 않으면 false를 반환합니다.
형식은 다음과 같습니다.
object.hasOwnProperty(proName); 객체 객체 속성 또는 객체. 사용 예는 다음과 같습니다.
var bStr = "Test String".hasOwnProperty("split")
// String 개체의 프로토타입에는 이미 이 속성은 자연스럽게 true를 반환합니다.
var bStr1 = String.prototype.hasOwnProperty("split");
// 프로토타입의 속성이 감지되지 않으므로 true를 반환합니다.
var bObj = ({fnTest:function(){}}) .hasOwnProperty("fnTest ");
JQuery, Extjs, YUI, Prototype, Dojo 등 JS 프레임워크의 차이점 및 적용 시나리오(실용 팁)
JavaScript 객체 지향의 객체 유형 및 범위에 대한 종합 분석 개념 (첨부 예)
JavaScript의 __proto__ 속성 설명에 중점을 둡니다(그림 및 텍스트 튜토리얼)
위 내용은 JavaScript isPrototypeOf 및 hasOwnProperty 사용법의 차이점(실용)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!