본문 바로가기
웹(web)/프론트엔드-javascript

[Function] return value

by 바코94 2020. 6. 1.

1. 생성자 함수가 아닌 경우

함수에서 리턴값을 지정하지 않으면 어떻게 될까?

답은 undefined가 리턴된다.

 

2. 생성자 함수인 경우

function A(name){

  this.name = name

}

var foo = new A('bob');

 

생성자 함수인 경우 return이 별도로 없으면 생성된 객체를 리턴한다. 즉, name이 'bob'인 객체를 리턴한다. 

생성자 함수가 동작하는 방식을 자세히 살펴보면 다음과 같다.

1. 빈 객체 생성 및 this 바인딩

  우선 {}로 생성할 때와 비슷하게 빈 객체가 생성되고 this는 이 빈 객체가 된다.

  빈 객체라고 해도 [[prototype]]은 있다. 자세한 것은 이후 포스팅에서 다루도록 한다.

2. 코드 실행 

  필요에 따라 this 속성 값 추가 

3. this 리턴 

 

 

 

 

'웹(web) > 프론트엔드-javascript' 카테고리의 다른 글

[Execution Context] Function call  (0) 2020.06.03
[Prototype] Prototype Chaining  (0) 2020.06.02
[Function]this, apply, call  (0) 2020.06.01
[Function] varient using function  (0) 2020.06.01
[Function] Function property  (0) 2020.05.31