
모듈: 파일이라고 생각하기
코드를 파일 단위로 나누어놓고 필요한 것을 불러와서 사용하는 것
Node.js 환경에서 모듈 문법을 사용하려면 파일을 .mjs 확장자로 저장해야한다.
모듈 문법을 사용하면 파일에서 필요한 것을 내보내고
다른 파일에서 가져올 수 있다.
export는 named export와 default export 2가지가 있다.
보통 파일에서 여러 함수와 변수를 export 하고 싶을 때는
named export를 쓰고,파일에서 하나의 메인 함수나 변수를 export 하고 싶을 때는
default export를 쓴다.
export const PI = 3.14; export function add(a, b) { return a + b; } export function subtract(a, b) { return a - b; } export function multiply(a, b) { return a * b; } export function divide(a, b) { return a / b; }내보내고 싶은 것 앞에 export 키워드를 사용하면 딘다.
참고로 const 혹은 function으로 선언하는 것 외에
let이나 class로 선언하는 것도 모두 export 할 수 있다.
const PI = 3.14; function add(a, b) { return a + b; } function subtract(a, b) { return a - b; } function multiply(a, b) { return a * b; } function divide(a, b) { return a / b; } const calculator = { PI, add, subtract, multiply, divide, } export default calculator;export 뒤에 default 키워드를 사용하면 default export를 할 수 있다. function과 class는 선언과 동시에 export default를 할 수 있지만
const와 let은 선언 이후에 export default를 해야한다.
default export는 파일당 한 번만 할 수 있다.
import { add, subtract } from './calculator.mjs'; console.log(add(1, 2)); console.log(subtract(1, 2));
import calculator from './calculator.mjs'; console.log(calculator.add(1, 2)); console.log(calculator.subtract(1, 2));
default import는 중괄호를 쓰지 않고
사용할 이름(위 코드에서 calculator)만 써주면 된다.
이름은 자유롭게 정할 수 있다.