[Node] exports 와 module.exports의 차이

Kim Tae Won·2021년 12월 27일
0
post-thumbnail
  • 요약
    exports.속성 = 값 또는
    module.exports = 객체

공통점

두 가지 모두 모듈 내부의 것을 외부에 공개하는 방법임

차이점

  • exports
    • 공개하고 싶은 것들을 하나씩 공개하는 것
exports.PI = 3.14;
exports.add = function add() { return a + b; };
exports.subtract = function subtract() { return a - b; };
exports.multiply = function multiply() { return a * b; };
exports.divide = function divide() { return a / b; };
  • module.exports
    • 공개하고 싶은 함수나 변수, 객체 등을 하나의 객체로 만들어 통째로 공개하는 것
    • 공개하고 싶은 것이 많을 때 사용
let calculator = {
  PI: 3.14,
  add: (a,b) => a + b,
  subtract: (a,b) => a - b,
  multiply: (a,b) => a * b,
  divide: (a,b) => a / b,
}
module.exports = caculator;

위 두 예시 모두 모듈을 불러와 사용할 때는 동일하게 사용가능하다

const cal = require('./math-tools.js');
console.log(cal.PI);
console.log(cal.add(1,2));
console.log(cal.subtract(1,2));
console.log(cal.multiply(1,2));
console.log(cal.divide(1,2));
profile
꿈이 너무나 큰 평범한 컴공 대딩에서 취업 성공!

0개의 댓글