남고생들의 소소한 개발 일지
[JS] 생성자와 NEW 본문
객체란 서로 연관된 변수와 함수를 그룹핑한 그릇이라고 할 수 있습니다.
객체 내의 변수를 프로퍼티(property) 함수를 메소드라고 합니다.
아래 예제를 한번 보겠습니다.
var person1 = {
'name' : 'A',
'introduce' : function(){
return 'My name is '+this.name;
}
}
var person2 = {
'name' : 'B',
'introduce' : function(){
return 'My name is '+this.name;
}
}
이름은 다르지만 메소드가 같습니다. 이것을 중복이라고 부르며
이 문제를 해결하는법은 중복을 제거 하는것이고 그 방법이 생성자와 New 입니다.
생성자
생성자는 객체를 만드는 역활을 하는 함수 입니다.
자바스크립트에서 함수는 재사용이 가능한 로직의 묶음이 아니라 객체를 만드는 창조라라고 할 수 있습니다.
아래 예제를 보겠습니다.
function a() {}
var p = new a();
p

원래는 아무값도 나오면 안되지만 new를 사용함으로써 a {} 라는 값이 출력 됩니다.
함수에 new를 붙치면 a(); 는 함수가 아니라 객체의 생성자가 되는것을 알수있습니다.
생성자는 객체에 대한 초기화라는 것을 합니다.
초기화를 통해서 코드의 재사용성이 대폭 높아진다는 장점이 있습니다.
# 생성자의 함수는 일반함수와 구분하기 위해서 첫글자를 대문자로 표기합니다.
'프로그래밍 > JavaScript' 카테고리의 다른 글
| [JS] 상속 (0) | 2019.10.30 |
|---|---|
| [js]전역객체, this (0) | 2019.10.29 |
| [JS] arguments (0) | 2019.10.25 |
| [JS] 클로저 (0) | 2019.10.24 |
| [JS] 값으로서의 함수와 콜백 (2) (0) | 2019.10.22 |