20.1 노드의 기초
자바스크립트로 프로그램을 만들 수 있으면 노드 애플리에키션도 만들 수 있습니다.
물론 브라우저 기반 자바스크립트 프로그램을 그냥 가져다가 노드에 실행할 수 있다는 의미는 아닙니다.
브라우저 기반 자바스크립트는 브라우저에만 해당하는 API를 사용합니다.
가장 명확한 특징은, 노드에는 DOM이 없다는 겁니다.
물론 HTML이 없으니까요.
마찬가지로, 노드에만 해당되고 브라우저에는 존재하지 않는 API도 있습니다.
운영체제와 파일시스템 지원 같은 일부 기능은 보안상의 이유로 브라우저에는 사용할 수 없습니다.
해커가 브라우저에 침투해 파일을 지울 수 있게 된다면 어떤 참사가 발생할지는 굳이 말하지 않아도 알 수 있을 겁니다.
그 밖에도 웹 서버를 만드는 기능 같은 것은 브라우저에는 아무 쓸모도 없습니다.
무엇이 자바스크립트이고 무엇이 API의 일부인지 구분할 수 있어야 합니다.
브라우저 기반 코드만 작성하던 개발자라면 window
와 document
가 자바스크립트의 일부라고 생각할 수 있지만, window
와 document
는 브라우저 환경에서 제공하는 API입니다.
이 장에서는 노드에서 제공하는 API에 대해 설명합니다.
노드와 npm을 아직 설치하지 않았다면 2장을 참고해서 지금 바로 설치하십시오.