promise, async await
정말 많은 감탄과 재미를 느끼며 공부를 하고있습니다.
감사합니다.
수업에서 promise, async await으로 각각 mongoose.connect 로직을 수행하였을 때, promise는 mongoose.connect 아래의 로직들이 수행되었다가 mongoose.connect 연결이 완료되면 then을 통해 로직이 구현됬고, async await으로 하면 아래의 로직들이 수행이 되는 것을 막고 mongoose.connect 로직이 끝내면 아래의 로직이 수행되었잖아요.
async await이 promise 기반으로 만들어졌다고 알고 있었는데 이러한 기능적인 차이를 둔것은 개발자가 목적에 맞게 둘 중에 하나를 쓰게 하기 위해 차이를 둔것인지 묻고 싶습니다.
또한 const server = async() => { } 함수로 묶어서 mongodb가 먼저 연결되도록 구현하였는데 이 방법이 신선하게 다가왔습니다. 실무에서도 이와 같이 구현을 하나요??
감사합니다!
답변 1
0
Dev님 안녕하세요 :)
async await 대신에 .then을 사용하셔도 완전 동일합니다(.then.catch를 선호하시면 이걸 사용하셔도 됩니다). 내부적으로는 그대로 Promise에요! const server = async() => {} 이렇게 함수로 감싼 이유는 보통 두자기 이유가 있는데요. 이 강의에서는 async await의 좀 더 간결한 문법을 사용하기 위함이었구요. 그리고 여기서는 하지 않았지만 테스트 코드를 작성할 때도 이런식으로 사용할 때가 있습니다. 테스트 환경에서 server를 불러와서 실해주는거죠.
option usecreateindex is not supported 오류 나면은
0
149
1
Schemaless 특성을 재생시 검은화면이 나와요
0
241
1
user 내장 시 ref 필드 필요성
0
240
1
await 관련해서 질문드릴게 있습니다!!
0
293
2
섹션6의 3번째 강의 faker파일이 어디있나요?
0
311
1
$elemMatch 질문이 있습니다.
0
248
1
DB 업데이트에 실패했을 상황에서 대처는 어떻게 할 수 있나요.
2
769
2
블로그에 user 데이터를 추가하는 방법에 대해서
0
239
1
blog 데이터 생성시 user 관련 오류
0
352
1
age 예외 처리를 별도로 하신 이유가 궁금합니다.
2
302
2
delete 메소드가 많은 이유가 궁금합니다.
0
184
1
unique validation 처리
0
298
1
updateMany에서 user._id를 못찾는 상황
1
398
1
find() 가 리턴하는 instance member
1
434
3
몽고 db를 백업방법을 부탁합니다.
0
606
1
인덱스 생성시점
0
713
1
$pull 문법에 대한 질문
0
362
1
comment의 id가 생성되는 시점
1
304
1
리팩토링 강의에서 라우터 리팩토링 전개연산자(...)
1
316
1
session.abortTransaction()에 대한 실제 예시 문의
0
289
1
섹션9 Computed Fields 강의에서, 다음 강의 가기 전 빠진부분
-1
411
1
faker 패키지 취약성 이슈
1
488
1
라우터 리팩토링
0
347
1
섹션4 진행중, mongoose 질문
0
314
1





