callstack
-
자바스크립트 - 동작 원리JavaScript/동작원리 2020. 7. 5. 20:23
자바스크립트는 싱글 스레드 프로그래밍 언어이다. 싱글 스레드 런타임을 가지고 있다는 의미이다. 이것은 결국 한 번에 하나의 싱글 콜 스택(Call Stack)만을 가지고 있다는 말을 뜻한다. 여기서 싱글 스레드란? 하나의 프로그램은 동시에 하나의 코드만 실행할 수 있다는 것을 말한다. 그렇다면 자바스크립트는 어떻게 작동할까? Call Stack 그림을 보면서 이해해보자. Call Stack은 Data Structure(자료 구조)로 작성한 코드가 실행되는 순서를 기억하고 있다. 함수를 실행하려면 Stack(스택)에 해당하는 함수를 집어넣게 되고, 함수에서 리턴이 일어나면, 스택의 가장 위쪽에서 해당 함수를 꺼내게 된다.(LIFO) 이것이 Call Stack이 하는 일의 전부이다. 이 코드를 실행하면 실행..