카테고리 없음

Node.js 모듈

tp134679 2025. 1. 5. 16:30

<목차>

1. 모듈

    1. 1내장 모듈 , 외장 모듈

2. 내장 객체 

 

1. 모듈

Node.js 에서 모듈이란 특정 기능을 수행하게 짜여진 코드 묶음으로서 독립적인 함수등의  코드 블록입니다. 내장모듈과 외장모듈로 나뉘어져있으며 파일의 접근이나 네크워크의 통신 HTTP 요청 처리등 다양한 기능을 쉽게 사용이 가능하게 모듈 형태로 제공하여 개발자가 쉽게 사용 할 수 있도록 도와줍니다. 

 

1.1내장 모듈 , 외장 모듈

 

내장모듈 

 

node.js 에  기본적으로 포함된 모듈로서 

fs : 파일 시스템 접근

http : 네크워크 통신

os : 운영체제 정보

 

외장모듈

 

개발자가 필요할 때 , 직접 설치해서 사용하는 추가 모듈 

express (외장모듈로서 서버를 열수 있게 도와주는 모듈) 과같이 사용자가 필요에 의해 추가가 가능하다.

 

npm( Node Package Manager)

페키지 저장소 : 수많은 외장 모듈(패키지)를 저장하고 있는 중앙 저장소 역할

페키지 설치 : 외장 모듈(패키지)를 간단한 명령어로 설치할 수 있다. 

페키지 관리 : 프로젝트에서 사용하는 모든 모듈의 `의존성` 을 관리합니다. 

`package.json` 파일을 통해 설치된 패키지의 목록과 버전을 기록하고 쉽게 설치 삭제 업데이트가 가능합니다.

 

 

2. 내장 객체

우리가 프로그래밍을 할때 복잡한 기능을 쉽게 처리하도록 도와주는 기본도구로서 브라우저에서는 window를 사용하였지만 node.js에서만 사용하는 대장 객체도 존재한다.

 

global 

node.js 를 사용하기전에는 js 와 html을 연결시키기 위하여 window 객체를 사용해서 불러왔다면 node.js 에서는 dom, bom이 없기에 window 대신에 전역으로 사용하기 위한 global 객체가 나오게 되었습니다. 또한 자바스크립트는 브라우저와의 상호작용을 위한 언어였다면 노드는 서버와의 통신에도 상호작용을 하기위해서 global 객체가 나오게 되었습니다.

각자의 기능이 비슷하나  차이점이 존재하는데

 

- window: 웹 페이지와 사용자 인터페이스를 조작하기 위한 객체입니다.
- global: 서버 측 로직과 관련된 기능을 제공합니다.

 

global 내장 객체의 종류 

 

module : 파일을 모듈로 만들어줘서 모듈간에 데이터를 주고 받을 수 있게 만들어줌 

      module.exports : 모듈에서 내보내는 객체나 값의 정의 기본값이 객체 속성 이기에 값을 할당하면서 넘겨줄 수 있다.

      exports: 참조의 개념을 가짐 (객체)

왼쪽 index1.에서 함수 a,b를 작성 하고 모듈로 내보냄 가운데 index2 에서 require로 받아냄 오른쪽 index2 를 node로 실행

 

      require() : 다른 파일에서 정의된 모듈을 불러오는 역할 불러올때 불러온 파일을 한번 로드함  

이런식으로 파일이 달라도 인자값을 할당해서 값을 줄 수 있다.

process : 현재 실행중인 프로세스와 관련된 정보와 기능을 제공한다.

 

__dirname(directory name) : 현재 파일이 위치한 디렉토리 경로

__filename : 현재 파일의 전체 경로 

Infinity :양의 무한대를 나타내는 숫자값

NaN : 숫자가 아님을 나타내는 값

undefined :정의되지 않음을 나타내는 값

null :아무런 값도 없음을 나타내는 값

 

모듈을 사용하여 인자값으로 작동하는 간단한 계산기