NEW 연산자와 생성자 함수
생성자(contructor)
객체 레터럴 {...}을 사용하면 편하게 객체를 만들수 있습니다. 간혹 개발을 하다보면 유사한 객체를 중복적으로 만들 때가 있습니다.
ex) 복수의 사용자(?),다양한 아이템을 객체 표현
이럴 때 new 연산자와 생성자 함수를 사용하면 편리하게 만들 수 있습니다.
- 생성자 함수는 앞을 대문자로 작성합니다.
- 호출 시 'new' 키워드를 붙여 사용합니다.
생성자 함수(contructor function)과 일반 함수의 차이는 없습니다.
생성자의 의의는 재사용할 수 있는 객체 생성 코드를 작성
function User(user){
this.name = user,
this.isAdmin = false
}
const userInfo1 = new User('cho');
const userInfo2 = new User('hyun');
console.log(userInfo1.name); // cho
console.log(userInfo1.isAdmin); // false
console.log(userInfo1.name === userInfo2.name); //false
// 다른 메모리를 사용함
생성자 내 메서드(method)
생성자내 메소드를 사용하면 매개변수를 사용하여 객체 내부를 자유롭게 구성할 수 있습니다.
위처럼 '프로퍼티'만 추가하는게 아니라 '메서드'를 추가하여 할 수 있습니다.
function User(name){
this.name = name,
this.log = function(){
console.log(`이름은 ${this.name} 입니다.`)
}
}
const defaultUser = new User('cho hyun');
default.log();
// 이름은 cho hyun 입니다.
참조 : https://ko.javascript.info/constructor-new
'JS' 카테고리의 다른 글
Axios..🦄 (0) | 2024.11.15 |
---|---|
프로미스(Promise)🫵🏻 (0) | 2024.08.18 |
JS 동기,비동기? (Stack & Queue of 자료구조)🥴 (0) | 2024.08.08 |
iterable과 iterator에 대하여 for..of...🧠 (0) | 2024.08.02 |