node.js 간단한 모듈 사용

보통 모듈이란 함수와 데이터들이 모여있는 파일을 말하며, 프로그램 내부에서 Import 하여 사용한다. 자바스크립트에서도 모듈이 존재한다. 보통 js 파일로 모듈이 형성되며, require 함수로 모듈을 JS내부로 Import 해준다.

sampleModule.js

exports.square = function(a, b) {
  var result = 1;

  for(i = 1; i <= b; i ++) {
    result = result * a;
  }

  return result;
}

exports.factorial = function(num) {
  var result = 1;

  for (i = num; i > 0; i -- ){
    result = result * i;
  }

  return result;
}

간단한 제곱연산과 팩토리얼 연산을 수행하는 모듈이다. exports.함수명을 이용하여 함수나 데이터를 호출하는 곳으로 내보낼 수 있다. 이 모듈을 foo.js 에서 Require 해오고 함수들을 사용해보자.

foo.js

var sampleModule = require('./sampleModule.js');

console.log(sampleModule.square(2,3));
console.log(sampleModule.factorial(5));
console.log(sampleModule.dumpData);

Require 해온 모듈을 변수에 담아서 객체로 사용하는 모습을 볼 수 있다. 멤버 변수와 메서드에 접근하여, 정상적으로 결과값이 출력되는 모습을 확인하자.