JavaScript_javascript 기술에 상속된 몇 가지 예시 메서드 및 속성에 대한 참조

WBOY
풀어 주다: 2016-05-16 18:21:42
원래의
996명이 탐색했습니다.
prototype 속성의 역할:
prototype 속성을 사용하여 객체 클래스의 기본 기능 집합을 제공합니다. 객체의 새로운 인스턴스는 객체의 프로토타입에 할당된 작업을 "상속"합니다.

프로토타입 속성의 기능:
모든 JavaScript 내부 개체에는 읽기 전용 프로토타입 속성이 있습니다. 내부 객체의 프로토타입에 기능을 추가할 수 있지만 객체에 다른 프로토타입을 부여할 수는 없습니다.
그러나 사용자 정의 개체를 새 프로토타입에 할당할 수 있습니다.

생성자 속성의 역할:
생성자는 객체를 생성하는 함수를 나타냅니다.

생성자 속성의 기능:
생성자 속성은 프로토타입이 있는 모든 객체의 멤버입니다. 여기에는 Global 및 Math 개체를 제외한 모든 JavaScript 내부 개체가 포함됩니다.
생성자 속성은 특정 객체 인스턴스를 생성하는 함수에 대한 참조를 보유합니다.

A 프로토타입을 사용하여 객체 속성 추가 [방법 1]
예:
코드 복사 코드는 다음과 같습니다.

>

B 프로토타입을 사용하여 객체 속성 추가 [방법 2]
예:



코드 복사 코드는 다음과 같습니다.



C는 프로토타입을 사용하여 상위 클래스의 프로토타입 속성을 상속합니다.
예:



코드 복사
코드는 다음과 같습니다. <script> </a>function Person(_name){ </span>this.name = _name; </div>} <div class="codebody" id="code13223">//객체 생성(프로토타입 프로토타입 객체 변경에 사용) <br>function addSex(_sex){ <br>this.sex = <br>} <br>//프로토타입 객체 변경 <br>Person.prototype = new addSex('male'); <br>var p = new Person( 'xugang') <br>alert("p의 프로토타입: " p.constructor); //모든 속성 인쇄<br>for(var i in p){ <br>//alert(p[ i]) <br><br>// ========= ======== 상속================ = <br>//하위 객체 Student 생성 <br>function Student(_study){ <br>this .study = _study; <br>} <br>// 프로토타입을 통해 Person 상속 <br>Student.prototype = new Person('Andy Lau') <br>var stu1 = new Student('JS'); <br>alert("stu1의 프로토타입: " stu1.constructor); <br>for(var i in stu1){ <br>alert(stu1[i]) <br></ script> <br><br> <br>Student 객체의 프로토타입이 Person 객체로 변경되고, Person 객체의 프로토타입이 addSex로 변경되므로 Student 객체의 프로토타입은 addSex입니다. <br>참고: 객체의 프로토타입은 새 객체가 생성되는 순간 결정됩니다. 새 객체 이후에 변경되면 무효화됩니다! <br><br>D 프로토타입 객체 및 객체 생성자를 설정하는 방법<br>예: <br><br> </div> <br><br>코드 복사<br><br><br> 코드는 다음과 같습니다: <br><div class="codetitle"> <span><script type="text/javascript"> <a style="CURSOR: pointer" data="52744" class="copybut" id="copybut52744" onclick="doCopy('code52744')">function B(){ <u>this.name = "Andy Lau" </u>return "메서드 B"; </a>} </span>function C(){ </div>this.age = 42; <div class="codebody" id="code52744">return "C 메서드" <br>} <br>B.prototype = new C() ; <br>var b = new B(); <br>b.constructor = B; //b의 생성자를 B 자체로 다시 작성<br>document.write("b의 생성자:"); .write(b .constructor() "<br/>"); <br>document.write("b의 프로토타입 객체 생성자 메서드: "); constructor() " <br/>"); <br>for ( var m in b ) <br>{ <br>document.write("속성: " m ) <br>document.write(" 값 : " b[ m] "<br/>"); <br>} <br></script>


결과는 다음과 같습니다.
b의 구성 방법: B 방법
b의 프로토타입 객체 구성 방법: C 방법
속성: age 값: 42
속성: name 값: Andy Lau

E 객체에 프로토타입을 저장하는 데 사용되는 __proto__ 변수
예:




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