본문 바로가기
Programming/Node.js

[Node.js] 노드의 모듈

by Bam_t 2021. 11. 30.
728x90

2021.10.05 - [Programming/Javascript] - [Javascript] 모듈 Module

자바스크립트에도 모듈이 존재하긴 합니다. 하지만 ES6이전에는 모듈이 존재하지 않았고 오직 노드에서만 모듈화를 시킬 수 있었습니다. 그래서 노드를 이용한 모듈화는 자바스크립트의 모듈 문법과 조금 다른 문법을 가지고 있습니다.

Node.js의 사용에 대해서는 ES6를 이해하는 것이 좋기 때문에 모듈을 알고있으리라 믿지만, 자세한 설명은 위의 링크를 참조하시면 됩니다.


1. Node.js 모듈

그럼 우리는 바로 Node.js에서 모듈을 어떻게 사용하는지 알아보겠습니다.

저는 getSum이라는 합을 구하는 함수를 모듈로 이용하려고 다음과 같이 코드를 작성했습니다. ES6방식에서는 모듈로 내보내고자 하는 변수, 함수 등의 앞에 export를 붙였지만, Node.js에서는 코드의 하단부에 module.export = 와 같은 식으로 모듈로 내보내고자 하는 변수를 따로 묶어서 작성했습니다.

const getSum = (x, y) => x + y;

module.exports = {
    getSum,
};
//혹은 module.exports = getSum;

 

한 번 모듈을 실제로 사용해봐야겠죠?

Node.js에서 모듈을 불러올 땐, ES6와는 조금 다르게 from을 쓰지 않고 require()가 옵니다. require 함수의 파라미터로 모듈이 존재하는 경로를 지정해주면 됩니다. 특히 require()는 앞으로 계속 사용할 예정이니 반드시 기억해 주세요.

const {getSum} = require('./getSum');

const useModule = () => {
    const x = 1;
    const y = 5;

    console.log(getSum(x, y));
}

useModule();

 

실행방식은 index.js를 html의 <script>에 담아도 되지만 REPL을 이용해서 해보겠습니다.

node [파일경로]

보시다시피 확장자명을 반드시 붙이지 않아도 제대로 실행이 되었습니다.

728x90

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

[Node.js] 쿠키 만들기  (0) 2021.12.01
[Node.js] REST  (0) 2021.12.01
[Node.js] 첫 서버와 Hello world!  (0) 2021.11.30
[Node.js] REPL  (0) 2021.11.28
[Node.js] Node.js의 소개와 특징  (0) 2021.11.28

댓글