런타임이란 ?
프로그램이 실행되고 있을때 그것이 존재하는 장소 또는 프로그래밍 언어가 구동되는 환경을 말합니다
예로 들자면 : .node.js는 자바스크립트가 구동되는 환경이다
또한 자바스크립트는 ( 싱글 -스레드 ) , (논-블로킹) 언어입니다. 두가지를 설명하자면
싱글 스레드는 하나의 힙 영역과 하나의 콜 스택을 가집니다. 하나의 콜 스택을 가진다는 의미는 한 번에 한 가지 일 밖에 하지 못한다는 의미입니다. 예를 들어 네트워크 요청을 한다면, 응답이 올 때까지 다른 일은 하지 못하고 마냥 기다릴 수밖에 없습니다.
블로킹 이란, Node.js 프로세스에서 추가적인 Javascript의 실행을 위해 Javascript가 아닌 작업이 완료될 때까지 기다려야만 하는 상황이다.
반대로 논 블로킹은 추가적인 Javascript 실행을 위해 Javascript가 아닌 작업이 완료될 때까지 기다리지 않아도 되는 상황을 말한다.
위의 그림은 크롬의 자바스크립트 런타임을 표현한 그림입니다 ,
자바스크립트 런타임은 자바스크립트 엔진 , Web API , 콜백 큐 , 이벤트 루프 ,렌더 큐로 구성됩니다 ,
이스케이프 시퀸스 (escape sequence) (0) | 2022.09.18 |
---|---|
자바스크립트 런타임 장점 과 단점 (0) | 2022.09.18 |
JAVA 컴파일 (0) | 2022.09.18 |
인프리터 언어 와 컴파일러 언어 차이점 (0) | 2022.09.17 |
innerText , innerHTML / innerContent 차이점 (0) | 2022.09.16 |