백고등어 개발 블로그
2020.11.10 화요일 (with 동기/비동기) 본문
728x90
오늘 한 일
- 동기와 비동기에 관해서 다시 생각해보았다.
- 동기와 비동기, 블락킹와 논블락킹은 절차지향과 객체지향과 같이 개념일뿐이고, 그것을 코드로 표현하다보니 자바스크립트의 콜백으로 표현이 가능할뿐이다
- 그리고 콜백의 단점을 보완하기 위해 문법적으로 Promise, async/await 키워드가 나왔다
- 이벤트 루프의 동작으로 설명하자면 callstack 영역은 동기영역, webAPI 영역은 비동기영역으로 말할 수 있다
- 비동기적으로 동작하는 특정 함수들인 setTimeout, setInterval, AJAX 등등은 내부적으로 처리되는 순서에 따라서 동작되는 순서가 달라질 수 있다
- 그렇게 뒤죽박죽으로 실행되는 순서를 순차적으로 실행할 수 있도록 하는 방법은 자바스크립트의 콜백(callback)만 사용해서 해결할 수 있는 방법이 있지만 위에 얘기했듯이 자바스크립트 콜백의 단점을 보완하기 위해 Promise 객체와 async/await 키워드가 나왔다
Promise & Async/Await 와 이벤트 루프 동작원리
움짤로 보는 자바스크립트 동작 원리(5) - Promises & Async/Await
원문 (영어) : https://dev.to/lydiahallie/javascript-visualized-promises-async-await-5gke#syntax 저자 : Lydia Hallie 👩🏻💻Thanks to Lydia for this amazing article about Javascript! 🖍 Introduction..
kkangdda.tistory.com
자바스크립트 엔진의 이벤트 루프 동작에 관하여
728x90
'TIL' 카테고리의 다른 글
2020.11.12 목요일 (0) | 2020.11.12 |
---|---|
2020.11.11 수요일 (0) | 2020.11.12 |
2020.11.09 월요일 (1) | 2020.11.09 |
2020.11.08 일요일 (0) | 2020.11.08 |
2020.11.07 토요일 (0) | 2020.11.07 |