모듈이란?

분리된 각각의 자바스크립트 파일이고 각 파일은 특정한 목적을 가진 여러 개의 함수와 변수의 집합

이런 모듈의 사용 이유도 결국은 재사용을 위함

Node.js 내장 모듈과 객체

01_Console

콘솔 모듈은 웹 브라우저에서 제공했던 자바스크립트 console과 유사하고, 디버깅을 위해 사용

Console 클래스는 Node.js에서 파일 쓰기와 같은 스트림에 사용될 수 있음

Console 전역 객체는 Js에서 주로 로그를 확인해 보기 위해 사용했던 console.log( )와 같은 함수

02_Timers

타이머 모듈의 모든 함수는 전역 함수이기 때문에 require 없이 사용할 수 있음

const timeout = setTimeout(() => {
  console.log('1초 후에 실행됩니다.');
}, 1000);

const interval = setInterval(() => {
  console.log('1초 마다 실행됩니다.');
}, 1000);

const immediate = setImmediate(() => {
  console.log('setImmediate 함수 호출 뒤에 오는 모든 코드를 먼저 실행하고 바로 다음에 실행합니다.')
});

console.log('setImmediate 보다 먼저 실행됩니다.');

setTimeout(() => {
  clearInterval(interval); 
/*변수명이 interval인 1초 마다 콘솔창에 출력하기 
위해 정의한 setInterval 함수를 종료합니다. */
}, 3000);

03_Process

process 객체는 현재 실행되고 있는 Node.js 프로세스에 대한 정보와 제어를 제공함

전역으로 사용할 수 있지만 require 또는 import를 통해 명시적으로 호출해서 사용