• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

async await 함수 사용에 대해서 문의드립니다.

23.08.09 17:48 작성 조회수 170

1

아직 노드버드 ch10 진행중입니다.

진행하면서 다른 글들도 참고하면서 진행중인데요

async await 사용 방식에 대해 문의드립니다.

DB 데이타 조회, 생성 시 async 로 진행하는데

코딩 방식1

try{

const user = await User.findOne(...);

...

await user.addFollowing(...);

}catch(err){

next(err);

}

코딩 방식2

User.findOne()

.then((result) => {

user.addFollowing(...);

})

.then((result) => {

...

})

.catch((err) => { next(err)});

방식1은 await 키워드로 비동기 함수 호출하는 방식이구

아래는 then 을 통해 비동기 함수 호출 하는 방식인듯 한데요.

둘중 많이 쓰는 방식이 있을까요..?

답변 3

·

답변을 작성해보세요.

1

당연히 1번입니다. 2번으로 하면 불편하다는 게 느껴지지 않으시나요?

1

양진영님의 프로필

양진영

2023.08.09

둘다 비동기 함수를 호출하는건 맞지만 async await가 promise보다 더 괜찮은 방법이라구 생각합니다. 왜냐하면 promise then과같은 체이닝 방식을 계속해서 사용하면 이것또한 콜백지옥처럼 코드 가독성 좋지않게 주욱 늘어날 가능성이 높다고 생각합니다. 그리고 async await는 비동기 호출이지만 동기적으로 작동하는것 처럼 보이기에 아무래도 코드 가독성 면에서 더 좋다고 생각합니다.

0

카이님의 프로필

카이

질문자

2023.08.09

두분 모두 답변 감사합니다