본문 바로가기

Server/Node.js

<노드JS> 노드 내장 객체

 

1. 전역객체, console객체, 타이머

* global

 - 노드의 전역 객체를 의미하며, 브라우저의 window같은 역할이다. 그러나 document는 존재하지 않는다.

 

 - window와 같이 생략이 가능하다. (ex. console)

 

 - 최근에는 브라우저와의 호환을 위해서 globalThis로 통일되어 사용할 수 있다.(익스플로러에서는 동작X)

 

 - global 속성에 값을 대입하면 다른 파일에서도 사용이 가능하지만 관리가 힘들어지므로 권장하지 않는다.

 

* console

 - 브라우저의 console과 거의 같다.

 

 - console.log : 로그

 - console.time, console.timeEnd : 시간 로깅

 - console.error : 에러로깅

 

* 타이머 메서드

 - 브라우저의 시간과 관련된 메서드와 거의 동일하다.

 

 - setTimeout(콜백함수, 밀리초) : 주어진 시간 이후에 함수를 실행한다.

 - setInterval(콜백함수, 밀리초) : 주어진 시간마다 함수를 실행한다.

 - setImmediate(콜백함수) : 함수를 즉시 실행한다.

 

 - clearTimeout(아이디) : setTimout을 취소한다.

 - clearInterval(아이디) : setInterval을 취소한다.

 - clearImmediate(아이디) : setImmediate를 취소한다.

 

2. filename, dirname

* filename

 - __filename 으로 현재 파일 경로를 알 수 있다.

 

//filename.js
console.log(__filename);

// c:\Harry\filename.js

 

* dirname

 - __dirname 으로 현재 폴더 경로를 알 수 있다.

 

//dirname.js
console.log(__dirname);

// c:\Harry

 

3. process

* process

 - 현재 실행중인 노드 프로세스에 대한 정보를 담고 있다.

 

 - process.version : 노드의 버전

 - process.platform : 운영체제 플랫폼 정보

 - process.cwd() : 현재 프로세스가 실행되는 위치

 - process.cpuUsage() : 현재 cpu 사용량

 

* process.env

 - 시스템 환경 변수들이 들어있는 객체이다.

 

const secretKey = process.env.SECRET_KEY;

 

 - 주로 비밀키를 보관하는 용도로 쓰이며, precess.env로 접근 가능하다.

 

* process.nextTick

 - 다른 콜백 함수들보다 우선순위가 있는 콜백함수를 만들 수 있다.

 

 - process.nextTick(콜백함수) 와 같이 사용한다.

 

 - setImmediate나 setTimeout(0초) 보다 먼저 실행되기는 하지만 프로미스와 같은 급의 우선순위를 가지므로 프로미스와는 순서를 지켜서 실행된다.

 

 


 

 

 

참고

 

 

문서 | Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

 

 

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지 - 인프런 | 강의

노드가 무엇인지부터, 자바스크립트 최신 문법, 노드의 API, npm, 모듈 시스템, 데이터베이스, 테스팅 등을 배우고 5가지 실전 예제로 프로젝트를 만들어 나갑니다. 최종적으로 클라우드에 서비스

www.inflearn.com

 

'Server > Node.js' 카테고리의 다른 글

<Node> M1 Mac에서 Rosetta로 노드 패키지 설치하기  (0) 2022.06.14
<노드JS> http 서버 만들기  (0) 2021.07.17
<노드JS> 노드 내장 모듈  (0) 2021.07.16
<노드JS> 노드 JS란  (0) 2021.07.15