자바스크립트 프로토타입 속성

프로토타입은 일종의 상속 개념과 비슷하지만 다른 언어와 완전히 다릅니다. 주로 이 목적을 위해 옵니다. 함수 생성자를 사용하여 객체를 생성할 때 외부에서 속성을 변경할 수 없습니다. 그러나 프로토타입을 사용하여 이 함수 생성자를 수정할 수 있습니다. 조건은 새 키워드를 사용하기 위해 필요할 때마다 필요하다는 것입니다. Prototype은 주로 추가 개체 메서드 또는 개체 속성을 사용해야 할 때 작동하고 프로토타입은 특정 개체 또는 액세스해야 하는 대상에 대한 액세스를 제공합니다. 하지만 '.'를 사용하여 추가 메서드나 속성을 추가할 수 있다고 생각합니다.Like

 let x = {};
x.play = function(){
//console.log('using method')
};


여기에 조건이 있으면 이 메소드를 생성할 수 있지만 이 동일한 메소드를 사용하려면 다른 함수나 객체 생성자 등을 사용해야 합니다. 코드를 계속해서 정의해야 합니다. 따라서 프로토타입을 사용하는 경우 코드의 최상위에 메서드나 속성을 호출하여 원하는 위치에 사용할 수 있습니다. 이 과정에서 코드를 반복해서 작성할 필요가 없습니다.
이 함수는 장면 뒤에서 작동하지만 생성자를 사용하여 객체를 생성한다는 것을 기억하십시오.

let x= {  name:"mahin"} // x.__proto__
let y = [12,2,4]  // y.__proto__
function func(){ } // func.prototype


함수, 배열, 객체를 초기화할 때. javascript가 기본적으로 추가될 때마다 숨겨진 속성이 있습니다. 프로토타입 또는 프로토타입입니다. 기능으로만 작동하는 프로토타입. 다른 시간 작업 프로토. 그것들은 같은 것들입니다.

let ss = {
    say:function(x){
        this.adress = x;
        return this;
    }
}
function Person(first) {
  this.firstName = first;
}
Person.prototype = ss;
const myFather = new Person("John");
console.log(myFather.say('dhajka'));
// its different for __proto__
let ss = {
    say:function(x){
        this.adress = x;
        return this;
    }
}
let Person = {
    names:'mahin'
}
Person.__proto__ = ss;
const myFather = Person;
console.log(myFather.say('mahin'));




객체를 생성하려면 이 키워드를 사용해야 한다는 것을 기억하십시오. 실제로 이것은 객체를 의미하며 우리는 객체를 호출해야 하는 새 객체를 생성하려는 경우 알고 있습니다. 재산. 더 자세히 알고 싶다면 Object.create를 탐색할 수 있습니다.
때로는 프로토타입을 완전히 사용할 때 객체/함수/배열을 콘솔할 수 있다면 부모 프로토타입 내부에서 자식 프로토타입을 찾을 수 있습니다.

좋은 웹페이지 즐겨찾기