Achievement Goals
- 어떤 경우에 중첩된 callback이 발생하는지 이해할 수 있다.
- 중첩된 callback의 단점, Promise의 장점을 이해할 수 있다.
- Promise 사용 패턴을 이해할 수 있다.
- resolve, reject의 의미와, then, catch와의 관계를 이해할 수 있다.
- Promise에서 인자를 넘기는 방법을 이해할 수 있다.
- Promise의 세 가지 상태를 이해할 수 있다.
- Promise.all 의 사용법을 이해할 수 있다.
- async/await keyword에 대해 이해하고, 작동 원리를 이해할 수 있다.
- Node.js의 fs 모듈의 사용법을 이해할 수 있다.
콜백함수
1. 콜백함수는 함수 그자체를 연결하는거지 함수의 실행을 통한 return 값을 보내주는 것이 아니다.
ex)function(){console.log("ㅎㅎ")} => return 하는 것이 없기 때문에 undefiend 를 보냄
비동기 vs 동기
동기 :1의 요청을 받고 결과가 끝나면 2의 요청과 결과를 만들 수 있다.(2의 요청을 blocking 하기 때문)
순서의 이해 요청 => 일하기 => 응답
비동기: 1의 요청과 2의 요청을 동시에 받는다. (요청에 대한 blocking이 없다)
ex) dom이벤트에 클릭했을 때 (트리거, 이벤트에 의해서) => 이벤트 헨들러가 실행된다.
페이지 로딩, 타이머 API 애니메이션 API fetch API AJAX
예시 fetch API
url을 받아서 fetch 를 이용해 url의 JSON 데이터를 불러오는 것
let url =
"https://v1.nocodeapi.com/codestates/google_sheets/YbFMAAgOPgIwEXUU?tabId=최신뉴스";
fetch(url)
.then((response) => response.json())
.then((json) => console.log(json))
.catch((error) => console.log(error));