반응형

Constructor 2

자바스크립트의 상속

다음과 같은 생성자 함수가 있다고 해보자. function Person(first, last, age, gender, interests) { this.name = { first, last }; this.age = age; this.gender = gender; this.interests = interests; }; Person.prototype.greeting = function() { alert('Hi! I\'m ' + this.name.first + '.'); }; 그리고 Teacher라는 생성자 함수를 정의해보자. function Teacher(first, last, age, gender, interests, subject) { Person.call(this, first, last, age, gen..

IT/JS 2021.08.25

프로토타입(prototype)에 대하여

JS에서는 객체를 상속하기 위하여 prototype이라는 방식을 사용한다. 이번 포스팅에서는 프로토타입 체인이 동작하는 방식을 알아보고, 이미 존재하는 생성자에 메소드를 추가하기 위해 프로토타입 속성을 사용하는 방법을 정리해보겠다. 또한 function의 타입이 Object가 아닌 function으로 나오는 이유도 알아보겠다. JS는 프로토타입 기반 언어이다. 모든 객체들은 프로토타입 객체를 가진다. 프로토타입 객체는 또 다시 상위 프로토타입 객체를 가질 수 있으며 이를 프로토타입 체인이라고 부른다. 프로토타입 체인은 다른 객체에 정의된 메소드와 속성을 한 객체에서 사용할 수 있도록 하는 근간이 된다. 정확히 말하자면 상속되는 속성과 메소드들은 객체의 생성자의 프로토타입이라는 속성에 정의되어 있다. 생성..

IT/JS 2021.08.20
반응형