[JavaScript] 객체 생성자

박현아·2025년 5월 2일
0

JavaScript

목록 보기
3/4

자바스크립트에서 객체를 만들 때 객체 생성자를 사용할 수 있는 방법은 두 가지가 있다.

  • 클래스를 사용하여 객체 생성자 정의
  • 함수 방식으로 객체 생성자 사용

1. 클래스를 사용한 객체 생성자 (ES6)

ES6부터는 클래스를 사용하여 객체 생성자를 정의할 수 있다. 클래스는 생성자 함수의 새로운 문법적 표현이다.

 <script>
        class Person {
          // 생성자 함수
            constructor(name, age) {
                this.name = name;
                this.age = age;
            }
          
          // 메서드 정의
            sayHello() {
                console.log(`안녕하세요 ${this.name}`);
            }
        }
 
		// 객체 생성
        let person1 = new Person("홍길동", 20);

		// 메서드 호출
        person1.sayHello();
    </script>

2-1. 함수 방식으로 객체 생성자 사용 (전통적 방식)

전통적인 객체 생성자 방식은 함수 선언을 사용하여 객체를 생성하는 방법이다. 이 방식에서 new 키워드를 사용하여 객체를 생성한다.

 	<script>
      	// 객체 생성자 함수 정의
        function Person(name, age) {
            this.name = name;
            this.age = age;
            this.sayHello = function() {
                console.log(`안녕하세요 ${this.name}`);
            };
        }

		// 객체 생성
        let person1 = new Person("홍길동", 30);

		// 메서드 호출
        person1.sayHello();
    </script>

2-2. 프로토타입 사용

객체 생성자 함수에 프로토타입을 사용하여 함수를 등록하면 메모리 낭비를 줄일 수 있다.

	<script>
        function Person(name, age) {
            this.name = name;
            this.age = age;
            // this.sayHello = function() {
            //     console.log(`안녕하세요 ${this.name}`);
            // };     
        }

        Person.prototype.sayHello = function() {
            console.log(`안녕하세요 ${this.name}`);
        }

        let person1 = new Person("박현아", 29);
        person1.sayHello();
    </script>

0개의 댓글