본문 바로가기
개발자 일기/일일회고 (TIL)

[원티드 프리온보딩 9월]3회차 회고

by MS_developer 2024. 9. 16.

 

프리온보딩 3회차가 지나 어느덧 막바지를 향해 달려가고 있다.

이번 주제는 콜백 함수 - Promise 객체 - async / await 로 이어지는 개발 흐름과 그 배경에 대한 주제로 강의가 진행되었다. 

 

 

역시나 "대충은" 알고 있는 내용이었지만, 명확히 설명을 위해서는 잘 알고 있어야함을 또 깨달았다. 개발자가 아닌 사람들은 이런 이야기는 재밌어할지도 모르겠다고 생각했다. (아님)


오늘의 학습내용

  • 콜백함수의 정의 및 사용법
  • 프로미스 객체가 생긴 이유, 정의
  • 프로미스 팩토리 함수
  • JavaScript에서의 async / await
  • Syntax sugar
  • JS에서의 일급 객체란

어려웠던 keyword / 활용한 질문

Q. Promise 객체와 async / await 의 차이점은 무엇인가요? 

 

A. Promise 객체는 비동기 작업의 결과를 나타내며, 해당 작업이 성공하거나 실패했을 때 이를 처리할 수 있는 객체입니다. Async / await은 Promise를 더 직관적이고 동기적으로 보이게 사용하는 문법입니다. Async 함수는 항상 Promise 객체를 반환하고, 함수 내부에서 await 키워드를 통해 비동기 작업이 완료될 때까지 기다릴 수 있습니다.

 

Q. async / await 보다 Promise를 사용하는 것이 더 좋을 때도 있나요?

 

A. 여러 비동기 작업을 병렬적으로 실행할 때 Promise 객체의 내장 메서드 Promise.all(), Promise.race() 등을 사용하면 async / await 보다 효율적으로 작업을 실행할 수 있습니다. 또는 프로미스 체인 중간에 추가 작업이 필요할 때에도 async / await 가 다르게 하나의 객체 안에서 처리할 수 있습니다. Promise의 체인을 통해 중간에 다른 작업을 삽3입하거나, 복잡한 흐름 제어를 하고 싶을 때  async / await 보다 유리합니다.

댓글