article thumbnail image
Published 2021. 8. 10. 11:46

화살표 함수는 function을 완전히 대체할 수는 없다.

function add1(x+y){
    return x + y;
}

const add2 = (x,y) => {
    return x + y;
};

const add3 = (x,y) => x + y;

const add4 = (x,y) => (x+y); // 헷갈릴 수 있으니 리턴값 묶어준다.

 

function not1(x){
    return !x;
}

const not2 = x => !x;

 

주의할 점

바로 객체를 리턴하는 경우에만 (소괄호) 필수!!

const obj = (x, y) => ({x, y});

const obj = (x, y) => {
    return {x, y}
};

화살표 함수가 기존 함수를 대체할 수 없는 이유 : this

 

 

화살표 함수는 무조건 부모의 this를 물려 받는다.

 

 

 

그러나 옛날 function 에서는 부모의 this와 내 this가 다르기 때문에 

this를 that에 대입해서 써줄 수 있다.

 

 

결론 :
this 를 쓸 거면 function 함수를 쓰고
this 를 쓰지 않을 거면 화살표 함수로 통일하라.

 

'🚦 Server > Node.js' 카테고리의 다른 글

서드파티 모듈, npm 이해하기  (1) 2021.10.26
Node js 정리  (0) 2021.10.19
Node - const, let 는 var를 대체한다.  (0) 2021.08.10
Node - 호출 스택, 이벤트 루프  (0) 2021.08.10
Node - 정의, 특성, 역할  (0) 2021.08.09
복사했습니다!