개발공작소
728x90
반응형

 

 

 

 

javascript에서 객체를 생성하는 3가지 방법에 대해서 정리해보려 한다.

 

1. Object 생성자 함수 사용

2. 객체 리터널 방식 사용

3. 생성자 함수 사용

 

이렇게 3가지 방법이 있는데, 내가 객체를 생성할 때 가장 많이 쓰는 방식은
객체 리터럴 방식이다. 각 장단점이 있겠지만, 가장 좋은 방식은 객체 리터널 방식이지 않을까 싶다.


우선 직관적인 게 첫번째 이유, 그리고 객체를 생성함과 동시에 프로퍼티를 할당하기 때문에
속도가 빠르다는 게 두번째 이유이다. 그럼 각 방식에 대해서 자세히 알아보자.

 

 

1.Object 생성자 함수 사용

//비어있는 객체 생성
var student = new Object();

//student 객체의 프로퍼티를 할당
student.name = 'michelle'
student.age = 18
student.sayHello = function(){
    console.log(this.name + 'Hello!');
}

console.log(student);

//student 객체에 프로퍼티를 새로 할당 할 수도 있다.
student.job = 'developer';
student.hobby = 'movie';

 

 

2. 객체 리터널 방식 사용

var student = {
    name : 'michelle',
    age : 18,
    sayHello : function(){
        console.log(this.name + 'Hello!');
    }
};

console.log(student);

객체 리터널 방식은 {}를 이용하여 객체를 만든다. 아마 가장 많이 쓰이는 방식이 아닐까 싶다.

 

 

 

3. 생성자 함수 사용

function Student(name, age){
	this.name = name;
	this.age = age;
	this.sayHello = function(){
		console.log(this.name + 'Hello!');
	}
};

var student1 = new Student('michelle', 27);
var student2 = new Student('frank', 36);
var student3 = new Student('demi', 27);

 

이 방식은 java에서 클래스를 생성하고 해당 클래스를 생성자를 사용하여 객체를 만드는 방식과 비슷하다. ( 참조 )

다른 점은 클래스가 아닌, 생성자 함수를 사용한다는 점이다. 그외에는 하나의 생성자 함수(java에서는 클래스)를

통해 여러개의 객체를 생성하는 것이 가능하다는 점이 비슷하다고 할 수 있겠다.

 

 

 

 

728x90
반응형
profile

개발공작소

@모찌바라기

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!