[1] TIL
1. JavaScript QnA 세션 by 최원장 튜터님
(1) 동기, 비동기를 구분 짓는 기준
1) 응답이 오지 않았음에도 불구하고 요청을 보낼 수 있는가?
a. 외부 서버로부터 데이터를 받을 때, 언제 받을 수 있을지 모르기 때문에 비동기
b. 비동기를 동기적으로 만들어야지만 순차적으로 할 수 있음
(2) Fetch
1) promise 객체를 반환
2) 비동기적인 부분을 동기적으로 만들어 주는 것이 .then
(3) async, await
1) 논리가 조금 복잡하면 써야함
2) 일단 async를 넣지 않고 모든 개발을 끝낸 뒤에 실행 => 오류
그 때, await와 가장 가까운 함수에 async
3) 언제 기다려야 하는지를 내가 먼저 정의하자.
(4) 비동기는 콜백함수의 제어권이 나에게 멀어진 것.
(5) 예외 처리 : try, catch, finally
1) 우선 try
2) catch : error가 나면 alert 메세지
내부적으로는 오류 메세지 적재, 오류 해결
3) finally : 성공, 실패와 상관없이 결국에 어떻게 할지?
(6) New Promise
1) pending : 대기 => 성공 or 실패 응답을 받을 때까지
2) fulfilled : 약속된 행동이 이행됨.
3) rejected : 약속된 행동이 이행되지 않음
4) promise 객체를 만드는 사람은 1) ~ 3)을 정하는 사람
5) 나는 promise 객체를 이용하는 사람
6) await를 통해 response가 fulfilled 된 상태를 이용하는 것
(7) Promise.all
1) Promise all은 운명 공동체
2) allSettled는 살 놈은 살리는 것
'개발일지' 카테고리의 다른 글
20240116_TIL #17 (0) | 2024.01.17 |
---|---|
20240115_TIL 16일차 (0) | 2024.01.16 |
20240111_TIL 14일차 (0) | 2024.01.12 |
20240110_TIL 13일차 (0) | 2024.01.11 |
20240109_TIL 12일차 (2) | 2024.01.10 |