본문 바로가기
study/node.js

node.js 모듈

by 땅콩잉 2021. 10. 24.
728x90

제로초님의 node.js 강의를 들으며 정리하는 내용입니다.

 

모듈 작성

//module_file.js

const odd='hi';
const even='hello';
module.exports={odd,even};

모듈을 불러올 파일을 작성

//main.js

const value= require('./module_file.js'); // .js생략 가능 module_file.js가져온다.
const odd = value.odd;
const even = value.even;

 

구조분해 할당으로 축약하면 다음과 같다.

//module_file2.js

const {odd,even} =  require('./module_file');

function oddEven(num){

    if(num%/2){

       return odd;

    }else{

       return even;

    }

}
module.exports = oddEven; //내보내기

여러개 내보내고 싶으면 다음과 같이 작성.(내보내는 소스는 파일에서 한 번만 써야함)

module.exports = {oddEven,odd,even};

 

이걸 가져와보면

//main.js
const {odd,even} = require('./module_file');
const checkFun = require('./module_file2');

변수 명은 마음대로 지을 수 있어서 checkFun로 했으나

구조 분해 할당으로(const {odd,even} = ~~ 이부분 ) 했을 시에는 변수명이 똑같아야함 (const odd,even부분..)

 

파일을 잘게 쪼개서 공통되는 애들을 빼주어 사용할 수 있게 해주는게 모듈! 

 

ES2015 모듈

자스 모듈시스템 문법이 생김.

-아직 노드에서 지원 완벽하지 않음, mjs확장자 사용해야 함.

-크게 require->import, module.exports ->export default 로 쓰는 것으로 바뀜

 

const {odd,even} = require('./module_file'); => import {odd,even} from './module_file'; 이렇게 바꾸면 된다.

require랑 import랑 동작이 다르듯이 export default랑 module.exports랑 다르다.

1:1 대응 되는게 아니니 무조건 위에 처럼 바꾼다고 다 되는건 아니라고 한다.

'study > node.js' 카테고리의 다른 글

node.js 내장 객체  (0) 2021.10.24
nodejs 파일 읽기  (0) 2021.09.18
node.js 시작하기  (0) 2021.09.15

댓글