일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- character
- 개발블로그
- 개발
- animating
- c++
- 언리얼엔진
- reallusion
- iclone
- 티스토리챌린지
- js
- 프로그래밍
- JavaScript
- 3dmodeling
- Costume
- ANIMATION
- 3d
- visualstudio
- UnrealEngine
- charactercreator
- HTML
- C언어
- modeling
- 오블완
- 애니메이팅
- C
- autodesk
- unreal
- cc4
- ue5
- 마야
Archives
- Today
- Total
개발나라 스용공주
[Node.js] CommonJS(CJS)모듈이란? 본문
728x90
728x90
이번 글은 모듈 시스템 CJS에 대한 글이다.
[ CJS 사용 구조 ]
아래 두 코드를 보면 CJS는 실행하고자 하는 파일(math)를 내보내 실행시키는 파일(index)에서 실행하는 것을 확인할 수 있다.
math)
이때 math에서 내보내는데 module이라는 내장 객체에 exports라는 프로퍼티의 값으로 객체를 저장하는 구조이다.
해당 객체 안에는 프로퍼티로 내보내고싶은 값을 넣어준다.
아래 코드의 주석처럼 객체 내부의 value와 key의 이름이 같을 경우 하나만 작성해줄 수 있으며 작성된 값은 CJS 모듈에 의해 math 모듈에서 내보내진다.
index)
require로 모듈 경로를 인수로 전달해 해당 경로에서 내보내진 값을 불러올 수 있다.
따라서 index에서는 객체에서 읽은 add와 sub의 값을 그대로 가져왔다.
[ math ]
// math 모듈
function add(a, b) {
return a + b;
}
function sub(a, b) {
return a-b;
}
// CJS(Common JS) 모듈시스템
module.exports = {
add, // add: add
sub, // sub: sub
}
[ index ]
const moduleData = require("./math.js");
console.log(moduleData.add(1, 2));
console.log(moduleData.sub(1, 2));
[ 구조분해할당으로 실행하기 ]
아래 코드는 위에서 언급된 index코드를 구조분해할당의 형식으로 작성한 것이다.
이때 바로 add와 sub에 할당하여 사용하는 것이다.
const {add, sub} = require("./math.js");
console.log(add(1,2));
console.log(sub(1,2));
728x90
728x90
'WEB > Node.js' 카테고리의 다른 글
[Node.js] ES 모듈이란? (0) | 2024.12.10 |
---|---|
[Node.js] Node.js 기본 (0) | 2024.12.10 |
[Node.js] Node.js로 자바스크립트 파일 실행시키기 (0) | 2024.12.10 |
Comments