본문 바로가기
CS 및 면접 질문

Node.js 애플리케이션에서 모듈을 어떻게 사용하나요?

by ho-bolt 2022. 6. 26.

🧐 궁금증

    브라우저에서는 다른 js파일을 불러올 때, html `script` 태그를 이용해서 불러올 수 있었다. 
    그렇다면 html이 없는 Node.js에서는 어떻게 다른 js 파일이나 모듈을 불러올 수 있는 걸까? 

🐸 node.js modules

  • node.js에서 모듈은 부품이다. 어플리케이션에 포함될 어떤 기능을 갖는 것의 집합 (함수, 파일), 등이 모듈이다.
🐣 외장모듈
  • 개발자들이 만들어 놓은 것
  • npm으로 다운받고 required를 통해 사용할 수 있다.
🥚 내장 모듈
  • Node.js 설치할 때 제공되는 모듈

🐰 모듈 불러오기

const 모듈 담을 변수명 = required ("모듈이름"); 
  • node_modules에 저장되어 있는 모듈을 required(모듈)로 불러올 수 있다.

node.js에는 기본적으로 내장되어 있는 모듈들이 있다.
그중 파일시스템 관련 모듈인 File System Module을 사용하려면 변수 fs에 fs를 담으면 된다.

const fs=require('fs'); 

🪲 js파일 불러오기

다른 js파일을 불러올 때도 required를 사용해 불러올 수 있다.

// script1.js
const module2 = require('./script2.js')

// script2.js
console.log('this is module 2');

🐣 모듈 노출

내가 만든 모듈을 js파일로 만들어 module.exports를 사용해 다른 js파일에서도 모듈을 접근할 수 있게 만들 수 있다.
만들어진 모듈은 마찬가지로 required를 사용해 불러온다.

// script1.js
const module2 = require('./script2.js')
console.log(modules2) // 'this is module 2'
// script2.js
module.exports = 'this is module 2'

script2.js를 module.exports했더니 script1.js에서 required로 불러올 수 있는 모습을 위의 예에서 볼 수 있다.

  • 이러한 방식으로 모듈을 노출시키고 불러오는 방식을 CommonJS 모듈이라고 한다.

 

 

참고 : https://velog.io/@bining/node.js-%EB%AA%A8%EB%93%88-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0-Common-JS

728x90

'CS 및 면접 질문' 카테고리의 다른 글

HTTPS 동작 방식  (0) 2022.06.27
SQL과 NoSQL의 차이  (0) 2022.06.27
package.json파일이 왜 필요한가 ?  (0) 2022.06.26
XSS에 대한 설명  (0) 2022.06.22
쿠키, 세션, 웹스토리지 차이  (0) 2022.06.22

댓글