재훈재훈
constructor 프로퍼티 본문
constructor 프로퍼티
constructor 프로퍼티는 객체를 초기화하는 데 쓰이는 생성자 함수를 참조한다.
모든 객체가 constructor 프로퍼티를 가지고 있다.
constructor 프로퍼티로 객체의 타입을 판단할 수 있고, 객체 생성도 가능하다.
즉, 자바로 치면 클래스의 생성자가 객체(함수)에도 있는 모양이다.
function Rectangle(x, y, w, h) {
this.pointX = x;
this.pointY = y;
this.width = w;
this.height = h;
}
Rectangle.prototype.toString = function() {
return 'Rectangle : { pointX : ' + this.pointX + ', pointY : ' + this.pointY
+ ', width : ' + this.width + ', height : ' + this.height + ' }';
};
Rectangle.prototype.area = function() {
return this.width * this.height;
};
var rect1 = new Rectangle(100, 120, 20, 30);
if (rect1.constructor == Rectangle) // 객체의 타입을 판단할 수 있다
document.writeln('rect1 객체의 생성자 함수는 Rectangle입니다.<br/>');
if (rect1.constructor.prototype == Rectangle.prototype)
document.writeln('rect1 객체의 생성자 함수의 프로토타입 객체는 Rectangle 생성자함수의 프로토타입 객체와 동일합니다.<br/>');
var rect2 = new rect1.constructor(250, 300, 30, 50); // 객체의 constructor 프로퍼티로 객체를 생성한다.
document.writeln('rect2: ' + rect2 + '<br/>');
document.writeln('<br/>');
'Computer Engineering > JavaScript' 카테고리의 다른 글
this (0) | 2018.05.15 |
---|---|
상속 (0) | 2018.04.07 |
prototype 프로퍼티 (0) | 2018.04.07 |
클로저 (0) | 2018.04.07 |
주요 연산자 그리고 제어문 (0) | 2018.04.07 |