본문 바로가기
Language/JavaScript

[객체 기본] new 연산자와 생성자 함수

by 싯벨트 2022. 12. 24.
728x90

#new 연산자

생성자 함수를 통해 유사한 형태의 새로운 객체를 만드는 데 사용한다.

모든 함수는 new 연산자를 사용해서 생성자 함수가 될 수 있다.

 

생성자 함수는 일반적으로 두 가지 관례를 따른다. 

  1. 함수 이름의 첫 글자는 대문자로 기재
  2. 반드시 'new' 연산자를 붙여서 실행

생성자 함수를 new 연산자 사용하여 실행했을 때, 동작하는 알고리즘은 다음과 같다.

1. 빈 객체를 만들어 this에 할당

2. 함수 본문 실행 및 this 에 새로운 프로퍼티 추가

3. this 반환

 

#new 연산자 사용 시, 객체 형성 알고리즘

//생성자 함수
function User(name) {
  // 1. 빈 객체 this 할당 (this = {})

  // 2. 함수 본문에 정의한 프로퍼티를 this에 할당
  this.name = name;
  this.isAdmin = false;

  // 3. this 반환 (return this)
}

// new 연산자를 활용하여 "보라"를 매개변수로 갖는 함수 실행
let user1 = new User("보라")

// 위의 경우와 동일한 리터럴 객체 할당
let user2 = {
  name: "보라",
  isAdmin: false
};

 

참고자료

https://ko.javascript.info/constructor-new

'Language > JavaScript' 카테고리의 다른 글

자바스크립트 일반  (0) 2023.06.24
[프로토타입] 프로토타입의 이해  (0) 2022.12.25
[Class] 게터와 세터  (0) 2022.12.17
[Class] 클래스 정의와 원리  (0) 2022.12.16
class & constructor 기초  (0) 2022.10.22