원형 체인 관련 개념

2295 단어
1. 하나의 구조 함수(Person)를 만들 때마다 프로토타입 속성이 있는데 이 속성은 하나의 바늘로 대상을 가리키며 이 대상을 원형 대상이라고 부른다.원형 대상에는 기본적으로 하나의 속성constructor가 있는데, 이 속성도 바늘로 연결된 구조 함수를 가리킨다.구조 함수를 호출하여 만든 실례적인 대상인person을 호출하면 내부 속성proto를 가지고 속성을 바꾸어 원형 대상을 가리키며 원형 대상의 모든 속성과 방법을 접근할 수 있다.
        function Person(){}
        Person.prototype.name = ' ';
        Person.pro
        var person = new Person();
        Person.prototype.constructor === Person;  //true
        person.__proto__ === Person.prototype;  //true
        person.name; // 
        person.sayName(); // :  

2. 만약에 이 원형 대상이 다른 구조 함수 맨의 실례라면 Person.prototype.proto가 Man을 가리킵니다.prototype, 실례 person도 맨의 원형 대상에 있는 모든 속성과 방법을 방문한다. 만약에 맨의 원형 대상이 또 Bbb의 실례라면 맨의 원형 대상에도 프로토가 Bbb의 원형 대상을 가리킨다. 이런 식으로 보면 마지막 함수인 Ddd의 원형 대상의 프로토 속성 Object.prototype, Object의 원형 대상의 proto 속성은null을 가리키고 이쪽은 원형 체인의 종점입니다.person은 원형 체인의 모든 원형 대상의 속성과 방법을 접근할 수 있습니다.
       function Man(){}
       Man.prototype.age = 22;
       Man.prototype.showAge = function(){
           console.log(' :'+this.age);
       }
       Person.prototype = new Man();
       var person = new Person();
       person.showAge(); // :22 // 
       Person.prototype.__proto__ === Man.prototype; //true
       Man.prototype.__proto__ === Object.prototype; //true
       Object.prototype.__proto__ === null; //true  // 

3. 모든 함수는 구조 함수든 일반 함수든 하나의 프로토 속성이 Function의 원형 대상을 가리키고 Function의 원형 대상의 모든 방법과 속성을 사용할 수 있다. Function 원형 대상은 하나의 프로토 속성이 Object를 가리킨다.prototype, 모든 함수는 Function 원형 대상의 모든 속성과 방법을 사용할 수 있고, Object 원형 대상의 모든 방법을 사용할 수 있습니다.구조 함수와 일반 함수의 차이: 구조 함수는 일반적으로 알파벳 대문자이고 일반 함수는 모두 소문자이다.
      function Person() {}
      function eat() {}
      Person.__proto__ === Function.prototype; //true
      eat.__proto__ === Function.prototype; //true
      Function.prototype.__proto__ === Object.prototype; //true

4. typeof'변수'의 결과가'function'이라면'변수'.proto === Function.prototype, 참고: typeof Object = = ='function'
    Object.__proto__ === Function.prototype;  //true

5. 속성 찾기 메커니즘: 우리는 어떤 대상의 어떤 속성을 찾으려고 한다. 만약에 우리가 현재 대상에서 찾지 못하면 우리는 원형 체인을 따라 그 대상을 한 단계 위로 찾는다. 만약에 상급자가 찾지 못하면 계속 위로 올라가면 Object를 찾을 수 있다.prototype, 없으면 undefined로 돌아갑니다.

좋은 웹페이지 즐겨찾기