p 276

수빈·2022년 12월 13일
0

프로토타입은 언제 생겨용?

생성자 함수가 프로토타입 데리고 온데용

사용자 정의 생성자 함수 vs 빌트인 생성자 함수

사용자 정의 생성자 함수

function Person(name) = {
	this.name = name;
}

console.log(Person.prototype)
// { constructor: f Person }
  • 런타임 이전에 모두 뿅뿅

    	constructor 생성자 함수 뿅 !
    	= 프로토타입 O ( 함수 선언문, 함수 표현식 )
    
    	~~non-constructor 생성자 함수 뿅 !
    	= 없다 X ( 화살표 함수, 메서드 축약 표현 )~~
  • 바인딩 퐁당

    	생성자 함수 : { prototype 프로퍼티 } = 프로토타입
    	생성자 함수.prototype = 프로토타입
  • 무한반복 둥글게 둥글게 뿅뿅

    	생성자 함수 : { prototype 프로퍼티 }
    	= 프로토타입 : { constructor 프로퍼티 }
    	= 생성자 함수 : { prototype 프로퍼티 }
    	= 프로토타입 : { constructor 프로퍼티 }
    	= 생성자 함수 : { prototype 프로퍼티 }
    	...
  • 프로토타입도 프로토타입 뿅뿅

    	프로토타입 : { __proto__: Object.prototype }

빌트인 생성자 함수

  • 전역 객체가 생성될때 모두 뿅뿅

  • 바인딩 퐁당

    	생성자 함수 : { prototype 프로퍼티 } = 프로토타입
  1. 런타임 이전 생성자 함수 + 프로토타입 뿅
  2. 객체 뿅
  3. 객체의 [[Prototype]] 내부 슬롯에 프로토타입을 퐁당
    ( 객체는 프로토타입을 상속받아서 부자가 되었답니당 )

0개의 댓글