강좌 & 팁
안녕하세요. 송기석입니다.
요즘 날씨가 조금 좋아진 것 같습니다. 하지만
감기는 이런 날씨에 더 잘 걸린다고 생각합니다. 모두 감기 조심하세요.
오늘은 프로토타입에 대한 내용을 하겠습니다. 강좌를
준비 하다 보니 하려고 하는 내용이 프로토타입에 대한 이해가 필요했습니다.
프로토타입 기반 프로그래밍 이란?
객체의 원형인 프로토타입을 이용하여 새로운 객체를 만들어내는 프로그래밍 기법입니다. 이렇게 만들어진 객체 역시 자기자신의 프로토타입을 갖습니다. 이
새로운 객체의 원형을 이용하면 또 다른 새로운 객체를 만들어 낼 수도 있으며 이런 구조로 객체를 확장하는 방식을 프로토타입 기반 프로그래밍이라고
합니다.
자바스크립트의 프로토타입(Prototype) 란?
자바스크립트의 모든 객체는 자신을 생성한 객체 원형에 대한 숨겨진 연결을 갖습니다. 이때 자기 자신을 생성하기 위해 사용된 객체원형을 프로토타입이라 합니다. 자바스크립트의
모든 객체는 Object 객체의 프로토타입을 기반으로 확장 되었기 때문에 이 연결의 끝은 Object 객체의 프로토타입 Object 입니다.
자바스크립트의 프로토타입(Prototype) 프로퍼티
란?
모든 함수 객체의 Constructor는 prototype 이란 프로퍼티를 가지고 있습니다. 이 prototype 프로퍼티는 객체가 생성될 당시 만들어지는 객체 자신의 원형이될 prototype 객체를 가리킵니다. 즉 자신을 만든 원형이 아닌
자신을 통해 만들어질 객체들이 원형으로 사용할 객체를 말합니다. prototype object는 default로 empty Object 를 가리킵니다.
자바스크립트의 프로토타입 체인(Prototype
Chain)
객체의 생성 과정에서 모태가 되는 프로토타입과의 연결고리가 이어져 상속관계를 통하여 상위 프로토타입으로 연속해서 이어지는 관계를 프로토타입 체인이라고 합니다. 이 연결은 __proto__ 를 따라 올라가게 됩니다.