호출스택노드는 자바스크립트 코드의 맨 위부터 한줄씩 실행하며 호출 스택에 순서대로 쌓아 놓고 맨 위에서부터 순서대로 하나씩 실행한다.코드를 실행할때 기본적으로 호출스택에 anonymous함수가 맨 처음 쌓이는데 이 함수는 처음 실행 시의 **전역 콘텍스트(global context)**를 의미하고 **콘텍스트(context)**란 함수가 호출되었을때 생성되는 환경을 의미한다.비동기 함수의 콜백함수를 실행하는데에 호출스택의 개념만으로는 설명이 안되고 이벤트 루프, 태스트 큐(task queue), **백그라운드라(backgound)**는 개념과 함께 설명한다.이벤트 루프: 노드가 종료될 때까지 이벤트 처리를 위한 작업을 반복하는 과정을 말한다. 이벤트 발생 시 호출할 콜백 함수들을 관리하고, 호출된 콜백 ..
노드의 정의노드란 뭘까? 공식문서에서는 노드를 이렇게 설명한다.Node.js는 Chrome V8 Javascript 엔진으로 빌드된 자바스크립트 런타임입니다.노드는 서버가 아닌 런타임이다.자바스크립트 런타임(RunTime)런타임은 특정 언어로 만든 프로그램들을 실행할 수 있는 환경을 말한다.자바스크립트 자체는 원래 브라우저에서 밖에 실행 할 수 없었다. 그 이유는 브라우저에는 자바스크립트 런타임이 내장되었기 때문이다. 그래서 자바스크립트를 브라우저 이외에서 실행 하려면 별도의 런타임이 필요하다. 그게 바로 Node.js다.Node.js는 2008년 구글에서 만든 크롬에 탑재된 V8엔진을 사용해 개발되었다.노드는 V8엔진과 비동기작업을 처리하는 libuv 라이브러리를 사용한다.이렇기 때문에 노드는 서버가 ..