JS가 비동기적 통신을 할 수 있는 이유에 대해 알아보자.

또한 event loop, blocking, callstack, heap 등 자주 사용하는 용어에 대해 바르게 정의해보자!

✉️ JS 런타임을 단순화해보자!

Untitled

📥 The Call Stack

function multiply(x, y) {
    return x * y;
}
function printSquare(x) {
    var s = multiply(x, x);
    console.log(s);
}
printSquare(5);

Call Stack에 들어온 네모 박스를 Stack Frame이라 함.

Call Stack에 들어온 네모 박스를 Stack Frame이라 함.

이 예시는 어떻게 될까?

function foo() {
    foo();
}
foo();