더북(TheBook)

3.3.2 ECMAScript 모듈

ECMAScript 모듈(이하 ES 모듈)은 공식적인 자바스크립트 모듈 형식입니다. 노드에서 아직까지는 CommonJS 모듈을 많이 쓰긴 하지만, ES 모듈이 표준으로 정해지면서 점점 ES 모듈을 사용하는 비율이 늘어나고 있습니다. 브라우저에서도 ES 모듈을 사용할 수 있어 브라우저와 노드 모두에 같은 모듈 형식을 사용할 수 있다는 것이 장점입니다.

이전 절의 코드를 ES 모듈 스타일로 바꿔보겠습니다.

var.mjs

export const odd = 'MJS 홀수입니다';
export const even = 'MJS 짝수입니다';

func.mjs

import { odd, even } from './var.mjs';

function checkOddOrEven(num) {
  if (num % 2) { // 홀수이면
    return odd;
  }
  return even;
}

export default checkOddOrEven;

index.mjs

import { odd, even } from './var.mjs';
import checkNumber from './func.mjs';

function checkStringOddOrEven(str) {
  if (str.length % 2) { // 홀수이면
    return odd;
  }
  return even;
}

console.log(checkNumber(10));
console.log(checkStringOddOrEven('hello'));

콘솔

$ node index.mjs
MJS 짝수입니다
MJS 홀수입니다
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.