Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 배당성장
- etf
- 인플레이션
- 금리인하
- 다형성
- mco
- 오버라이딩
- 기업분석
- object
- 잉여현금흐름
- 알고리즘
- javascript
- 주린이
- XLF
- 백준
- 프로그래머스
- 객체지향
- Java
- 접근제어자
- 무디스
- S&P500
- 그리디 알고리즘
- StringBuffer
- 제태크
- 현금흐름표
- 금리인상
- 주식
- 미국주식
- 자바
- FCF
Archives
- Today
- Total
오늘의하루
[javascript] Call Stack과 Event Loop 알아보기 본문
아래 내용은 제로초님의 강의를 듣고 나름대로 정리를 하는 내용입니다.
동기 & 비동기
- 동기 : 요청 후 응답을 받으면서 위에서부터 순서대로 다음 동작 실행
- 응답을 받기 전에는 다음 동작이 실행되지 않는다.
- 비동기 : 요청 후 응답과 상관없이 다음 동작이 실행
function onemore(){
console.log("onemore");
}
function run(){
console.log("run-run");
setTimeout(()=>{
console.log("wow~");
},0);
new Promise((resolve,reject)=>{
resolve("hi");
}).then((result)=>{
console.log(result);
});
onemore();
}
setTimeout(()=>{
return run();
},5000);
위 파일을 실행하면 출력이 어떤 순서로 되는지 알기 위해서는 CallStack과 Background, Task Queue, Event Loop에 대해 알고 있어야 한다.
기본적으로 동기 함수는 CallStack에 있다가 순차적으로 실행되지만 비동기 함수는 Background에서 Task Queue로 넘어가고 CallStack이 비어있을 때 Event Loop를 통해 Task Queue에 있던 동작이 CallStack으로 넘어가며 실행된다.
'javascript & nodejs' 카테고리의 다른 글
[Javascript] LinkedList 연결 리스트 구현하기 (0) | 2022.07.04 |
---|---|
[javascript] 조합, 순열 및 객체 정렬 (0) | 2022.06.23 |
[node js] Module 생성 및 사용 방법 (0) | 2022.05.22 |
Comments