객체 리터럴에 의한 객체 생성 방식은 가장 일반적이고, 간단한 객체 생성 방식이다.

const person = {name : "KO"};

객체 리터럴 이외에도 다양한 방법으로 생성 할 수 있다.


17-1. Object 생성자 함수

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

빈 객체를 생성한 이후 프로퍼티 혹은 메서드를 추가하여 객체를 완성시킬 수 있다.

const person = new Object();

person.name = "Lee";
person.sayHello = function(){
	console.log('Hi! My name is' + this.name);
};

console.log(person); // {name : "Lee", sayHello : f}

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

</aside>

<aside> 💡 생성자 함수에 의해 생성된 객체를 인스턴스(instance)라고 한다.

</aside>

자바스크립트는 Object 생성자 함수 이외에도 String, Number, Boolean, Function, Array, Date, RegExp, Promise 등의 빌트인(built in) 생성자 함수를 제공한다.

그럼 객체 리터럴로 객체 만드는 방식이 더 간편한데… 왜 생성자 함수로 객체를 만드는 걸까???…. 🧐

17-2. 생성자 함수

17-2-1 객체 리터럴에 의한 객체 생성 방식의 문제점..