자바스크립트에서 객체를 생성하는 방법에는 생성자 함수를 이용하는 방법이 있습니다. 생성자 함수란 일반적인 함수와 마찬가지로 동작하지만, 객체를 생성할 때 사용됩니다. 생성자 함수는 new 연산자와 함께 사용되며, 객체를 생성할 때마다 생성자 함수를 호출하여 객체를 초기화합니다.
생성자 함수는 함수 선언문, 함수 표현식, 화살표 함수 등 여러가지 형태로 정의할 수 있습니다. 일반적으로 생성자 함수의 이름은 첫 글자를 대문자로 작성하여 구분합니다.
생성자 함수 내부에서는 this 키워드를 사용하여 새로운 객체를 가리킵니다. this를 이용하여 객체의 프로퍼티와 메서드를 정의할 수 있습니다. 생성자 함수 내부에서는 일반 함수와 마찬가지로 매개변수를 사용할 수 있습니다.
사용법
예를 들어, 다음과 같이 Person 생성자 함수를 정의하여 name과 age를 프로퍼티로 가지는 객체를 생성할 수 있습니다.
function Person(name, age) {
this.name = name;
this.age = age;
}
var person1 = new Person("John", 30);
var person2 = new Person("Jane", 25);
위의 코드에서 Person 생성자 함수를 정의하고, new 연산자를 이용하여 person1과 person2 객체를 생성합니다. 생성된 객체는 Person 생성자 함수 내부에서 정의한 name과 age 프로퍼티를 가지며, 이 값은 new 연산자로 전달된 매개변수로 초기화됩니다.
생성자 함수를 이용하여 객체를 생성하는 것은 객체의 생성과 초기화를 하나의 작업으로 처리할 수 있으며, 코드의 재사용성과 유지보수성을 높일 수 있습니다. 또한 생성자 함수를 이용하여 객체를 생성할 때마다 동일한 프로퍼티와 메서드를 갖는 객체를 생성할 수 있으므로, 객체의 일관성을 유지할 수 있습니다.
생성자 함수를 이용하여 객체를 생성할 때 주의할 점으로는, 생성자 함수 내부에서 return문을 사용하는 경우가 있습니다. 이 경우에는 this가 아닌 return으로 지정한 객체가 반환됩니다. 또한 생성자 함수 내부에서 메서드를 정의할 때, 일반 함수와 달리 prototype 객체를 이용하여 정의해야 합니다. 이를 통해 생성된 객체들이 메모리를 공유할 수 있습니다.
'IT > javascript' 카테고리의 다른 글
자바스크립트 class extends (0) | 2023.04.24 |
---|---|
자바스크립트 클래스(Class) (0) | 2023.04.21 |
자바스크립트 팩토리 함수(Factory Function) (0) | 2023.04.20 |
자바스크립트 axios 사용법 (0) | 2023.04.20 |
자바스크립트 fetch 함수 (0) | 2023.04.20 |
댓글