자바스크립트에서 화살표가 2번 연속으로 나오는 경우는 어떻게 해석해야하나요?

조회수 112회
const completeSale = completeSaleId => async dispatch => {
  saleRef.child(completeSaleId).remove();

이건데, 화살표가 2번이나 나옵니다. 화살표함수는 아닐텐데 대체 어떻게 해석해야할까요...

1 답변

  • 좋아요

    2

    싫어요
    채택 취소하기

    화살표 함수 맞습니다.
    다만 2번 중첩되어 있을 뿐입니다.
    completeSale은 함수를 반환하는 함수가 담기게 되겠죠.

    좀 더 쉬운 예시로 바꿔볼게요.

    let sum = a => async b => { return a + b; };
    

    똑같이 생겼죠?
    이걸 일반 function으로 바꿔보면 바로 이해가 되실겁니다.

    let sum = function(a) {
        return async function(b) {
            return a + b;
        };
    };
    

    sum은 아래와 같이 쓸 수 있게 됩니다.

    let sum4 = sum(4);
    sum4(6).then(v => console.log(v)); // 10을 출력
    sum(1)(2).then(v => console.log(v)); // 3을 출력
    

    sum 호출의 결과물도 함수라는 것을 주목하시면 됩니다.

    • 정말 감사합니다!!!! chemica1 2019.2.4 16:46

답변을 하려면 로그인이 필요합니다.

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.