새소식

Deep Dive

[딥 다이브 스터디] 17장 생성자 함수에 의한 객체 생성

  • -
반응형

*우테코 딥 다이브 스터디 준비 중 작성한 정리본으로 필자의 잘못 이해한 부분이나 부족한 부분이 있을 수 있습니다. 

Object 생성자 함수

new 연산자와 함께 Object 생성자 함수를 호출하면 빈 객체를 생성하여 반환한다.

const person = new Object();

생성자 함수 (constructor)란 new 연산자와 함께 호출하여 객체(인스턴스)를 생성하는 함수를 말한다.

생성자 함수에 의해 생성된 객체를 인스턴스라고 한다.

const strObj = new String('Lee');
// String 생성자 함수에 의해 String 객체 생성 

 

 

생성자 함수에 의한 객체 생성 방식의 장점

  • 객체 리터럴에 의한 객체 생성 방식의 문제점
    • 동일한 프로퍼티를 갖는 객체를 여러개 생성하려면 매번 같은 프로퍼티를 재기술해야한다.
// 객체 리터럴 예시 
// 객체 리터럴은 중괄호({})를 사용하여 객체를 생성하고, 중괄호 내에 프로퍼티와 메서드를 정의합니다.
var circle1 = {
    radius: 5, 
    getDiameter() {
	    return 2 * this.radius;
	  }
};
  • 생성자 함수에 의한 객체 생성 방식은 객체(인스턴스)를 생성하기 위한 템플릿(클래스)처럼 생성자 함수를 사용하여 프로퍼티 구조가 동일한 객체 여러개를 간편하게 생성할 수 있다.
// 예시 
function Circle(radius) {
	this.radius = radius; 
	this.getDiameter = function() {
		return 2 * this.radius;
	}
}

const circle1 = new Circle(5);
const circle2 = new Circle(10);
반응형
Contents
-

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.