-
[ JavaScrip ] 객체 생성 방식, OrdinaryObjectCreate컴퓨터/JavaScript_typescript 2021. 1. 21. 19:22728x90
source : 이웅모, 자바스크립트 deep dive
* 자바스크립트는 프로토타입 기반 객체 생성 메커니즘을 지닌다
[ 객체 생성 방식 ]
1. 객체 리터럴
2. Object 생성자 함수
3. 생성자 함수
4. Object.create 메서드
5. 클래스 ( ES6 )
=> 프로토타입 체인은 모든 객체 생성 방식에 의해 생성된 인스턴스에 동일하게 적용된다.
* 추상연산 OrdinaryObjectCreate
각 방식마다 객체 생성 방식의 차이는 있으나 추상연산 OrdinaryObjectCreate에 의해 생성된다는 공통점이 있다.
OrdinaryObjectCreate : 필수적으로 자신이 생성할 객체의 프로토타입을 인수로 전달받는다.
ex. 객체 리터럴, new Object() : Object.prototype
그리고 자신이 생성할 객체에 추가할 프로퍼티 목록을 옵션으로 전달할 수 있다.
1. 빈 객체 생성
2. 추가할 프로퍼티 목록이 인수로 전달된 경우 프로퍼티를 객체에 추가
3. 인수로 전달받은 프로토타입을 자신이 생성할 객체의 [[Prototype]] 내부 슬롯에 할당
4. 생성한 객체를 반환한다.
반응형'컴퓨터 > JavaScript_typescript' 카테고리의 다른 글
개별 모듈로 분할하기: CommonJS vs ECMAScript module (0) 2021.02.18 [JavaScript] new FormData(form), Object.fromEntries(iterable), how to seriazlie form data (0) 2021.01.31 <script> 태그를 어디에 둘까, async, defer (0) 2020.12.11 [JavaScript] 같음 비교 (0) 2020.10.05 [JavaScript] arguments (0) 2020.10.04