17.1 Object 생성자 함수

Object 생성자 함수는 new 연산자와 함께 호출하면 빈 객체를 생성하여 반환하고 이 빈 객체에 프로퍼티나 메서드를 추가할 수 있다.

const obj = new Object();

{ }

// 프로퍼티 추가
obj.test1 = "test1";

console.log(obj.test1);  // "test1"

JS에서는 Object 생성자 함수 외에도 String , Number , Boolean 등 여러 빌트인 생성자를 제공한다.


17.2 생성자 함수

17.2.1 객체 리터럴에 의한 객체 생성 방식의 문제점

객체 리터럴 생성 방식은 아래와 같은 방식으로 객체를 생성하는 방식을 말한다.

const obj = {
	a: 1,
	func: () => {},
}

장점

단점


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

생성자 함수란 이름 그대로 객체(인스턴스)를 생성하는 함수이다.

생성자 함수를 이용하면 객체 리터럴 방식의 문제점(동일한 구조의 객체 생성 시 코드 중복 작성)을 해결할 수 있다.

function Circle(r) {
  this.r = r;
  this.testMethod = function () {
    return 1;
  };

	//return;;
}
// 생성자 함수 이용
const c1 = new Circle(5);
const c2 = new Circle(10);