RangeError : Maximum call stack size exceeded

JavaScript

이벤트 루프 (Event Loop)

이벤트 루프란 무엇인가?라는 아래 영상을 보고 정리한 글입니다. 먼저 자바스크립트 런타임을 단순화하여 도식화하면 아래와 같이 표현할 수 있다. 메모리 할당이 일어나는 힙과 콜 스택으로 구성되어 있다. 하지만 v8엔진의 코드를 보게 되면 setTimeout이나 DOM, HHTP요청을 관리하는 코드들을 찾아볼 수 없는데 비동기 작업이 어떻게 일어나는 것일까?? 위의 그림을 보면 v8런타임과 브라우저가 제공하는 웹 API가 있다. 브라우저는 DOM, AJAX, setTimeout등과 함께 event loop와 callback queue를 가지고 있다. JS는 싱글 스레드 프로그래밍 언어이다. 이는 싱글 스레드 런타임을 가지고 있다는 말이고, 결국 한 번에 하나의 싱글 콜 스택만을 가지고 있다는 말이다. 즉, ..

ㅇㄱ9
'RangeError : Maximum call stack size exceeded' 태그의 글 목록