<aside> 💡 "CJS"와 "MJS"는 각각 CommonJS와 ECMAScript Modules의 약어입니다. 이 두 모듈 시스템은 JavaScript에서 모듈을 정의하고 가져오는 방식을 다르게 다룹니다.

</aside>

목차

CommonJS (CJS):

예시 (CommonJS):

// 모듈 정의
module.exports = {
  key: 'value',
  func: function() {
    // 코드
  }
};

// 모듈 사용
const myModule = require('./myModule');
console.log(myModule.key);
myModule.func();

ECMAScript Modules (MJS):

예시 (ECMAScript Modules):

// 모듈 정의
export const key = 'value';
export function func() {
  // 코드
}

// 모듈 사용
import { key, func } from './myModule';
console.log(key);
func();

요약하면, CommonJS는 주로 서버 측 JavaScript 환경에서 사용되고 동기적으로 모듈을 로딩하는 반면, ECMAScript Modules는 브라우저와 서버 모두에서 사용 가능하며 비동기적으로 모듈을 로딩합니다. 최신 JavaScript 프로젝트에서는 보통 ECMAScript Modules를 선호하는 추세가 있습니다.